怎样获得Datalist的项模版里面被单击某控件名的值

转帖|其它|编辑:郝浩|2008-07-08 15:10:50.000|阅读 2224 次

概述:  我用C# asp.net2.0 我用datalist控件来显示不同商家的信息,当我单击某个商家imagebutton,想得到它的商家名,然后在另外一页显示更俱体的信息. 好多网友给我回复都不大行: asp:DataList ID=DataList1 runat=server OnItemCommand=DataList1_ItemCommand ItemTemplate asp:Label ID=Label1 runat=server Text='%# Eval(yourField) %'/asp:Label asp:ImageButton ID=ImageButton1 run

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

  我用C# asp.net2.0  我用datalist控件来显示不同商家的信息,当我单击某个商家imagebutton,想得到它的商家名,然后在另外一页显示更俱体的信息.   好多网友给我回复都不大行:

<asp:DataList ID="DataList1" runat="server" OnItemCommand="DataList1_ItemCommand">     <ItemTemplate>
         <asp:Label ID="Label1" runat="server" Text='<%# Eval("yourField") %>'></asp:Label>
         <asp:ImageButton ID="ImageButton1" runat="server" CommandName="XXX"/>
     </ItemTemplate>
 </asp:DataList> 
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e) {
     if (e.CommandName == "XXX") 
    { 
        Response.Write((e.Item.FindControl("Label1") as Label).Text);
     }
 }

  想得到它的商家名,然后在另外一页显示更俱体的信息. --------------------------------------- 商家肯定有唯一ID吧,如果你想面通过商家ID来显示具体信息,那么还有个办法就是: <asp:DataList ID="DataList1" runat="server" DataKeyField="商家ID"             DataSourceID="SqlDataSource1" onitemcommand="DataList1_ItemCommand"> 后台代码中DataList1.SelectedValue返回的就是商家ID,你可以通这个再进行进一步操作。

  加上CommandArgument=' <%# Eval("商家ID") %>' 然后在ItemCommand里Convert.ToInt32(e.CommmandArgument)来取得商家ID。

最后本人用下面这方法成功:

<asp:ImageButton ID="Imgbt1" runat="server"   Height="70px" ImageUrl=' <%# DataBinder.Eval(Container.DataItem,"shoppiture","Images/{0}") %>'  Width="82px" CommandArgument=' <%# DataBinder.Eval(Container.DataItem,"shopname") %>' PostBackUrl=' <%# "~/Shopmanage/ShopShow.aspx?shopname="+DataBinder.Eval(Container.DataItem,"shopname") %>' /> </td> 
<td style="width: 85px; height: 24px">


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com

文章转载自:lockepeak的专栏

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP