#asp.net #vb.net #gridview #event-handling
#asp.net #vb.net #gridview #обработка событий
Вопрос:
Я хочу изменить текст двух меток на основе выбранной строки gridview.
Я продолжаю получать сообщение об ошибке, в котором говорится, что строка общедоступного элемента не существует в linkbutton
Protected Sub LinkButton1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim LinkButton1 As LinkButton = DirectCast(sender, LinkButton)
Dim tour As Label = CType(sender.Row.FindControl("label2"), Label)
Dim depart As Label = CType(sender.Row.FindControl("label3"), Label)
test.Text = tour.Text
test1.Text = depart.Text
UpdatePanel9.Update()
End Sub
Ответ №1:
Согласно вашему коду, sender
это LinkButton
. Свойство Row
не будет существовать на кнопке ссылки, когда вы ссылаетесь sender.Row
. Вот почему вы получаете ошибку.
Вы хотите подключиться к событию SelectedIndexChanged, которое облегчит вам доступ к строке.
Sub MyGridView_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
Dim myGrid As GridView = TryCast(sender, GridView)
Dim selectedRow As GridViewRow = myGrid.SelectedRow
'do something with selected row as needed from here.....
End Sub