Практическое руководство. Поиск дочерних элементов управления по идентификатору на веб-странице ASP.NET
Обновлен: Ноябрь 2007
Ссылку на определенный элемент управления можно получить с помощью метода, ищущего идентификатор этого элемента управления в его контейнере именования.
Поиск элемента управления по идентификатору
Вызовите метод FindControl контейнера именования, передав ему строку, содержащую идентификатор необходимого элемента управления. Этот метод возвращает объект типа Control, который можно привести к соответствующему типу.
В приведенном ниже примере кода показано, как найти определенный элемент управления. Образцом является обработчик для события Click кнопки в элементе управления GridView. При нажатии кнопки код выполняет поиск элемента управления с именем Label1 в текущем элементе GridView, являющимся контейнером именования элемента управления Label. В случае обнаружения элемента управления его текст отображается во втором элементе управления Label с именем LabelText в другой части страницы.
Protected Sub GridView1_ItemCommand(ByVal source As Object, _ ByVal e As GridViewCommandEventArgs) _ Handles GridView1.ItemCommand Dim l As Label l = CType(e.Item.FindControl("Label1"), Label) If (Not l Is Nothing) Then LabelText.Text = l.Text End If End Sub
protected void GridView1_ItemCommand(object source, GridViewCommandEventArgs e) { Label l; l = (Label) e.Item.FindControl("Label1"); if(!(l == null) ){ LabelText.Text = l.Text; } }