скрыть столбцы по идентификатору в gridview в asp.net - PullRequest
1 голос
/ 17 марта 2011

У меня есть приложение asp.net, где у меня есть редактируемый вид сетки с опциями редактирования, удаления, добавления.эта сетка имеет как обычно поля шаблона.Я хочу скрыть некоторые столбцы.Я знаю, что могу сделать это с помощью индекса столбцов.но я не хочу следовать этому.вместо этого я хочу скрыть столбцы по Id.это связано с тем, что если в моем приложении необходимо добавить больше столбцов, необходимо изменить усиление кода и снова в ядре.поэтому я выбираю этот путь.Но, как я обнаружил, <asp:TemplateField /> не содержит атрибута Id.поэтому я не могу скрыть <asp:TemplateField/> по Id.какое-нибудь средство от этого?

Ответы [ 3 ]

1 голос
/ 17 марта 2011

Вы всегда можете сделать это, используя текст заголовка столбца.Запустите цикл по столбцам представления сетки и сравните текст заголовка столбца с объявленной константой и скройте столбец, таким образом, если вы добавляете любое количество столбцов до или после столбца, это не повлияет на код.

0 голосов
/ 17 марта 2011

Возможно, просто создайте разную разметку сетки для каждого «представления», которое вы хотите показать пользователю, поэтому одну сетку со всеми столбцами, а другую - с ограниченным числом столбцов.

Я предполагаю, что вы всегда будете привязывать одни и те же данные к сетке (независимо от того, скрываете ли вы / показываете столбцы), так что тогда вам просто понадобится некоторая логика в вашем коде, чтобы определить, какое "представление" вы хотите показать пользователь (т.е. с какой сеткой вы хотите связать).

0 голосов
/ 17 марта 2011

Возможно создать div с идентификатором внутри поля шаблона и скрыть этот div с кодом клиента.

...