У меня есть вид сетки, в котором на основе определенного значения из моего запроса на базу данных я хочу отображать различные типы элементов управления под столбцами Score1 и Score2. Это может варьироваться между отметкой, меткой, текстовым полем, простым значением или гиперссылкой.Отображать различные элементы управления на ячейке Gridview на основе данных конкретных ячеек
Мой случай использования следующий: если значение score1 пустое/NULL, отобразите текстовое поле, если оно не отобразите ссылку, в противном случае отобразите некоторые другие элементы управления ect .... так что на столбце оценка 1, i может иметь текстовое поле в одной строке, ссылку на другую строку.
Я пытался добавить TemplateField/ITemplate в коде позади динамически добавлять столбцы score1 и score2. Однако я могу сделать это только в Page_Load(), и столбец может содержать только один элемент управления. Любой указатель на то, как я должен подходить к этому?
Существует множество различных подходов к решению этой проблемы. Можно было бы поместить все возможные элементы управления в столбец в определении gridview (aspx page), а затем показать и использовать только те, которые вам нужны. Второй может состоять в том, чтобы определить разные столбцы с одним элементом управления, а затем использовать/показать только нужный столбец. Третьим может быть создание элементов управления «на лету» в существующей колонке. Вероятно, есть и другие, о которых я даже не думаю. –
Ваше первое предложение - самое простое, в котором, я думаю, я поставил весь контроль с их идентификатором, и посмотрю на них и спрячу все, кроме одного. Тем не менее, я действительно хочу узнать «создать контроль на лету», он кажется самым сложным, но в то же время он меня интригует ... проблема заключается в том, как его кодировать :), поскольку это то, что я пытался делать в течение последних 2 часов ... – Fylix
Я хотел бы добавить один пользовательский элемент управления динамически в один столбец gridview с несколькими строками, в зависимости от условия (чередующийся между 10 различными элементами управления), но я терпел неудачу. Чтобы лучше понять динамические элементы управления, я узнал, что часто лучше не использовать динамические элементы управления, если у вас нет очень веской причины. Хорошее чтение: TRULY Понимание динамических элементов управления - https://weblogs.asp.net/infinitiesloop/TRULY-Understanding-Dynamic-Controls-_2800_Part-1_2900_ – Doreen