我在<ItemTemplate>中加入了一个button控件,我想点一在另一个label中显示我要显示的内容,书中的代码是这样
在DataList_ItemCommand处理全程中
if(e.CommandName.ToLower()=="show")//show是button中CommandName属性
{
Label1.text="something";
}
为什么点了以后没有反应,请指教。在线等了
在DataList_ItemCommand处理全程中
if(e.CommandName.ToLower()=="show")//show是button中CommandName属性
{
Label1.text="something";
}
为什么点了以后没有反应,请指教。在线等了
这需要在DATALIST的另一个事件好象是ITEMCREATE事件
<HeaderTemplate>
<TABLE id="Table7" cellSpacing="1" cellPadding="1" width="100%" bgColor="#cc99cc" border="1">
<TR>
<TD width="60">用户名</TD>
<TD width="250">用户Email</TD>
<TD width="70">显示信息</TD>
</TR>
</TABLE>
</HeaderTemplate>
<ItemTemplate>
<TABLE id="Table1" cellSpacing="1" cellPadding="1" width="100%" align="left" border="1">
<TR>
<TD align="left" width="60">
<asp:Label id=UserName runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "UserName") %>'>
</asp:Label></TD>
<TD align="left" width="250">
<asp:Label id=CompanyName runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "Email") %>'>
</asp:Label></TD>
<TD align="right" width="70">
<asp:Button id="BtnShowText" runat="server" Text="显示" CommandName="show"></asp:Button></TD>
</TR>
</TABLE>
</ItemTemplate>
</asp:datalist><asp:label id="Label1" style="Z-INDEX: 102; LEFT: 536px; POSITION: absolute; TOP: 320px" runat="server" Width="184px" Height="48px">Label</asp:label>上面是HTML代码,下面是DataList_ItemCommand事件
private void dl_ItemCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
{
Label1.Text="dkjfskljfskljf";
if(e.CommandName.ToLower()=="show")
{
Label customer=(Label)e.Item.FindControl("UserName");
Label company=(Label)e.Item.FindControl("CompanyName");
if(customer!=null&& company!=null){Label1.Text=customer.Text+" "+company.Text;}
}
}
DataList属性事件页中的ItemCommand项对应函数dl_ItemCommand()
Button属性中的commandName也是"show"
请大家再帮着看看,谢
加入到private void InitializeComponent()
{
}
if ( !this.IsPostBack )
{}
语句中,特别是DataList的DataBind方法,一定要在这个语句中;就可以了
<asp:Button runat="server" Text="名称" OnCommand="eventhabdler" CommandArgument='<%# DataBinder.Eval(Container.DataItem,"参数字段")%>' ID="Button1">
</asp:Button>然后写一个方法:
eventhabdler(object source, System.Web.UI.WebControls.CommandEventArgs e)通过
e.CommandArgument.ToString()获得参数