ASP.NET获取DataList模板中控件的值

引言:关于这个问题,我之前真的是醉了,用了一下午多的时间解决怎样获取datalist控件里面的绑定了数据库的值的控件的值,找了很久很久很久,终于皇天不负有心人,我解决了那个问题,真的是很有成就感啊,开森。

 

1.这个需要使用datalist的ItemCommand事件,所以首先添加datalist的这个事件

2.当你点击某个按钮的时候,会触发ItemCommand事件,那么你可以为该按钮加上CommandName属性值,这里我给ImageButton设置的此属性值为:AddPic

<asp:DataList ID="imagelist" runat="server" CellPadding="0" RepeatColumns="10" Width="100%" OnItemCommand="imagelist_ItemCommand">
    <ItemTemplate>
        <div style="width:100%; height:100%; max-width:45px; max-height:45px; margin:1px; padding:0px;">
            <asp:ImageButton ID="imgurl" runat="server" ImageUrl='<%# DataBinder.Eval(Container, "DataItem.gamerolePic") %>' Width="100%" CssClass="imgstyle" AlternateText='<%# DataBinder.Eval(Container, "DataItem.gameroleName") %>' CommandName="AddPic" />
        </div>
    </ItemTemplate>
</asp:DataList>

 

3.在后台可以将CommandName的值作为进行的操作的判断条件

4.接下来就是关键的获取控件的值了,首先你要获得点击行的索引

5.然后根据这个索引值和你想要获取控件的ID来寻找这个控件的值,我这里是获取ImageButton控件,所以用的是ImageButton定义,后面的“imgurl”是ImageButton的ID,当然你也可以用lable、button等控件

if (e.CommandName == "AddPic")
{
    //int CN_id = int.Parse(e.CommandArgument.ToString());
    ImageButton imgbut = (ImageButton)e.Item.FindControl("imgurl");
    Response.Write("<script>alert('" + imgbut.ImageUrl + "');</script>");
}

 

以上,就是关于ASP如何获取DataList模板控件值的方法了

该文章转载于:百度经验-mahongdiana

posted @ 2021-06-24 16:34  青丝·旅人  阅读(661)  评论(0编辑  收藏  举报