将Button等控件嵌入到repeater中

简介:

ASPX页面:

增加两个事件,及传值。

<asp:Repeater ID="rptList" OnItemDataBound="rptList_ItemDataBound"  OnItemCommand="rptList_ItemCommand" runat="server" DataSourceID="SqlDataSource1">
   <ItemTemplate>
     <%#Eval("Title") %>   
    <asp:Button ID="btnPass" runat="server" Text="Pass" CssClass="btn" CommandName="btnPass" ItemEventArgs=<%# Eval("Title") %> CommandArgument=<%# Eval("Title") %> />     
  </ItemTemplate>
</asp:Repeater>

CS页面:

     protected void rptList_ItemCommand(object source, RepeaterCommandEventArgs e)
    {
        {
            if (e.CommandName == "btnPass")
            {
                string strCA = e.CommandArgument.ToString();
            }
            Response.Write(e.CommandArgument.ToString());
        }
    }
    protected void rptList_ItemDataBound(object sender, RepeaterItemEventArgs e)
    {
        Response.Write(e.Item.ToString());
     }

 

简单说明四处

1:OnItemDataBound="rptList_ItemDataBound"

     这个事件,跟按钮点击事件,并没有关系。在这里。只是用于控制按钮的显示状态。

2:OnItemCommand="rptList_ItemCommand"

     这个事件,就是重点啦。用于当触发Command相关的事件,用于,当点击了按钮后,触发要执行的代码。

3:CommandName="btnPass" 

    主要是每个按钮的标识,相当于ID一样。用于后台代码找到,你点击的是哪个按钮。

4:CommandArgument="<%# Eval("Title") %> "

     传值,object 类型。 比如你可以把这一行数据的ID传进去。当然可以把整个Entity传进去。

相关文章
Layui 内置方法 - layer.setTop(置顶当前窗口)
Layui 内置方法 - layer.setTop(置顶当前窗口)
233 0
|
Windows
背水一战 Windows 10 (31) - 控件(按钮类): ButtonBase, Button, HyperlinkButton, RepeatButton, ToggleButton, AppBarButton, AppBarToggleButton
原文:背水一战 Windows 10 (31) - 控件(按钮类): ButtonBase, Button, HyperlinkButton, RepeatButton, ToggleButton, AppBarButton, AppBarToggleButton [源码下载] 背水一战 Wind...
990 0
|
.NET C# 开发框架
|
Java Android开发
【Android 开发入门】为按钮添加Click单击事件处理程序,显示/隐藏另一个按钮
在上篇“走进Android开发的世界,HelloWorld”,我们创建了一个Android 项目 HelloWorld,并演示了如何通过USB连接手机查看运行效果;这里讲一下如何为应用添加一个按钮,并为按钮添加Click单击事件处理程序,显示/隐藏另一个按钮。
1846 0
|
Python 容器
pyqt的多Button的点击事件的槽函数的区分发送signal的按钮。
关键函数:QPushButton的setObjectName()/objectName()   个人注解:按功能或者区域,将按钮的点击事件绑定的不同的槽函数上。   from PyQt5.
2310 0