repeater中点LinkButtom获取行数据
repeater中点LinkButtom获取行数据。。。(请这位大哥把这个的方法告诉我,我现在也遇上了,挺麻烦的~~)...
repeater中点LinkButtom获取行数据。。。(请这位大哥把这个的方法告诉我,我现在也遇上了,挺麻烦的~~)
展开
展开全部
aspx:
<asp:Repeater ID="Repeater1" runat="server"
onitemcommand="Repeater1_ItemCommand">
<ItemTemplate>
<%# Eval("Key") %> -<%# Eval("Value") %> <asp:LinkButton runat="server" CommandName="view" CommandArgument='<%# DataBinder.Eval(Container, "DataItem") %>'>View</asp:LinkButton> <br />
</ItemTemplate>
</asp:Repeater>
<asp:TextBox runat="server" ID="txMsg"></asp:TextBox>
aspx.cs:
protected void Page_Load(object sender, EventArgs e)
{
Dictionary<int, string> dic = new Dictionary<int, string>();
dic.Add(1, "111");
dic.Add(2, "222");
Repeater1.DataSource = dic;
Repeater1.DataBind();
}
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "view")
{
txMsg.Text = e.CommandArgument.ToString();
}
}
大概是这么个意思,根据自己的实际情况做一些修改就行了
或者也可以将LinkButton的CommandArgument属性绑定为表中的唯一标识ID,然后在ItemCommand事件中根据唯一标识ID去数据库中取回数据。
<asp:Repeater ID="Repeater1" runat="server"
onitemcommand="Repeater1_ItemCommand">
<ItemTemplate>
<%# Eval("Key") %> -<%# Eval("Value") %> <asp:LinkButton runat="server" CommandName="view" CommandArgument='<%# DataBinder.Eval(Container, "DataItem") %>'>View</asp:LinkButton> <br />
</ItemTemplate>
</asp:Repeater>
<asp:TextBox runat="server" ID="txMsg"></asp:TextBox>
aspx.cs:
protected void Page_Load(object sender, EventArgs e)
{
Dictionary<int, string> dic = new Dictionary<int, string>();
dic.Add(1, "111");
dic.Add(2, "222");
Repeater1.DataSource = dic;
Repeater1.DataBind();
}
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "view")
{
txMsg.Text = e.CommandArgument.ToString();
}
}
大概是这么个意思,根据自己的实际情况做一些修改就行了
或者也可以将LinkButton的CommandArgument属性绑定为表中的唯一标识ID,然后在ItemCommand事件中根据唯一标识ID去数据库中取回数据。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询