Использование GridView HyperLinkField для установки CategoryID - PullRequest
2 голосов
/ 12 февраля 2009

Я использую asp.net и работаю с gridview. У меня есть одно из полей в моем GridView, настроенное как HyperLinkField, которое представляет название категории. Я извлекаю имя и идентификатор из базы данных, и я никогда не могу быть уверен, что они есть, потому что они добавляются отдельно. Я хочу, чтобы иметь возможность передать изменение CategoryId на другую страницу через строку запроса. Как я могу сделать это с GridView?

Ответы [ 2 ]

2 голосов
/ 12 февраля 2009

В поле «Гиперссылка» задайте для DataNavigateUrlFields столбец идентификатора и установите для DataNavigateUrlFormatString значение URL-адреса для перехода (где {0} будет заменен на идентификатор)

<asp:HyperLinkField 
    DataNavigateUrlFields="ID" 
    DataNavigateUrlFormatString="Target.aspx?ID={0}"
    DataTextField="Name" 
    Target="_blank">
</asp:HyperLinkField>
0 голосов
/ 12 февраля 2009

Вы можете сделать это, используя <asp:TemplateField /> в качестве одного из столбцов вместо <asp:BoundField />

Пример кода:

<asp:TemplateField HeaderText="Name">
    <ItemTemplate>
       <a href="/new_page?categoryId=<%#Container.DataItem("id")"><%#Container.DataItem("name")</a>
    </ItemTemplate>
</asp:TemplateField>

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...