日期:2014-05-18  浏览次数:20842 次

在Repeater的ItemCommand事件中如何获取对应的那行记录的值?
我的开发环境是frmwork 1.1的,我aspx中是这样写的:
<asp:repeater id="repeater_limit" runat="server">
<ItemTemplate>
<table width="100%" border="1" cellpadding="0" cellspacing="0" align="center" class="black"
borderColorLight="#143861" borderColorDark="#afd3f1">
<tr height="30">
<td align="center" width="150">
<asp:Label id="limitURL" runat="server" Visible="true">
<%# DataBinder.Eval(Container.DataItem,"limitURL") %>
</asp:Label>
<asp:LinkButton id="link_limitName" runat="server">
<font color="blue">
<%# DataBinder.Eval(Container.DataItem,"limitName") %>
</font>
</asp:LinkButton>
</td>
</tr>
</table>
</ItemTemplate>
</asp:repeater>




后台.cs文件是参照很多帖子里这样写的:
private void repeater_limit_ItemCommand(object source, System.Web.UI.WebControls.RepeaterCommandEventArgs e)
{
Label ids=(Label)e.Item.FindControl("limitURL");
LinkButton iiii=(LinkButton)e.Item.FindControl("link_limitName");
int i = e.Item.ItemIndex;
Label id = (Label)repeater_limit.Items[i].FindControl("limitURL");
//string stp =((DataRowView)e.Item.DataItem)["limitURL"].ToString();
//string s = e.Item.Cells[i].Text.ToString();
//string m = DataBinder.Eval(e.Item.DataItem,"limitURL").ToString();
}

结果除了能读到e.Item.ItemIndex的值,其他的值都得不到,后面三行注释掉的干脆报错,请问各位高手,我是哪里的问题,帮帮小妹吧!

------解决方案--------------------
在你的LinkButton 中加一个 CommandName 这里放你想要的值

然后 后台 

e.CommandName 就是你点击那个按钮 的这个值了