Когда я нажимаю на строку в своем GridView, я хочу перейти на другую страницу с идентификатором, который я получаю из базы данных.
В моем событии RowCreated у меня есть следующая строка:
e.Row.Attributes.Add(
"onClick",
ClientScript.GetPostBackClientHyperlink(
this.grdSearchResults, "Select$" + e.Row.RowIndex));
Чтобы предотвратить сообщения об ошибках, у меня есть этот код:
protected override void Render(HtmlTextWriter writer)
{
// .NET will refuse to accept "unknown" postbacks for security reasons.
// Because of this we have to register all possible callbacks
// This must be done in Render, hence the override
for (int i = 0; i < grdSearchResults.Rows.Count; i++)
{
Page.ClientScript.RegisterForEventValidation(
new System.Web.UI.PostBackOptions(
grdSearchResults, "Select$" + i.ToString()));
}
// Do the standard rendering stuff
base.Render(writer);
}
Как я могу присвоить строке уникальный идентификатор (из БД), и когда я нажимаю на строку, открывается другая страница (например, щелчок на href), и эта страница может прочитать идентификатор.