Пошаговое руководство. Отклик на события Button в элементах DataList или Repeater

Visual Studio 2010

Обновлен: Ноябрь 2007

Если шаблон элемента управления DataList или Repeater включает серверные веб-элементы управления Button, LinkButton или ImageButton, эти кнопки могут посылать их события Click в содержимое элемента управления DataList или Repeater. Это позволяет использовать кнопки для функций, не определенных заранее в элементе управления DataList (правка, удаление, обновление и отмена) и определить функциональность элемента управления Repeater.

Обеспечение отклика на события кнопок в элементах DataList и Repeater

  1. Добавьте Button, LinkButton или ImageButton в шаблон элемента управления.

  2. Задайте свойство CommandName кнопки строке, описывающей ее функциональность, например, «sort» или «copy».

  3. Создайте метод для события ItemCommand содержащего элемента управления. В методе выполните следующее:

    1. Изучите свойство CommandName объекта аргумента события, чтобы увидеть переданную строку.

    2. Выполните необходимые действия, соответствующие нажатой кнопке.

    Следующий пример демонстрирует реакцию на нажатие кнопки в элементе управления DataList. В примере шаблон ItemTemplate содержит элемент управления ImageButton, который отображает покупательскую корзину. Кнопка посылает команду AddToCart. Обработчик событий ItemCommand определяет, какая кнопка была нажата, и, если это кнопка с тележкой, осуществляет соответствующие действия.

    Protected Sub DataList1_ItemCommand(ByVal source As Object, _
            ByVal e As DataListCommandEventArgs)
        If e.CommandName = "AddToCart" Then
            ' Add code here to add the item to the shopping cart.
            ' Use the value of e.Item.ItemIndex to retrieve the data 
            ' item in the control.
        End If
    End Sub
    

    protected void DataList1_ItemCommand(object source, 
        DataListCommandEventArgs e)
    {
       if (e.CommandName == "AddToCart")
       {      
          // Add code here to add the item to the shopping cart.
          // Use the value of e.Item.ItemIndex to retrieve the data 
          // item in the control.
       }
    }
    

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

Показ: