如何:响应 DataList 或 Repeater 项中的按钮事件

更新:2007 年 11 月

如果 DataListRepeater 控件模板包含 ButtonLinkButtonImageButton Web 服务器控件,则这些按钮可以将它们的 Click 事件发送到容器控件 DataListRepeater 中。这使您可以包含实现尚未为 DataList 控件定义的功能(编辑、删除、更新和取消)的按钮,而且允许为 Repeater 控件定义功能。

响应 DataList 和 Repeater 控件中的按钮事件

  1. 在控件模板中包括 ButtonLinkButtonImageButton

  2. 将按钮的 CommandName 属性设置为标识其功能的字符串,如“排序”或“复制”。

  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 Web 服务器控件的示例,请参见 如何:允许用户选择 DataList Web 服务器控件中的项

请参见

任务

如何:允许用户编辑 DataList Web 服务器控件中的项

如何:允许用户删除 DataList Web 服务器控件中的项

如何:响应 GridView 控件中的按钮事件

参考

DataList Web 服务器控件概述

Repeater Web 服务器控件概述