如果没有任何意义,您将不得不原谅我,因为我仍然是非常新的ASP.NET的。我有一个任意长的物品列表(假设它是一个Person类型的列表),我已经想出了如何绑定到一个Repeater控件并显示物品的属性(例如人物的名字)。将对象绑定到控件上
我很想知道的是,我可以怎样“结合”各个部分,并知道数据从服务器端返回的位置(可能没有意义,我会再试一次)。 从下面的代码中,当用户点击一个LinkButton和一个Person的名字时,HelloHandler将运行。但我怎么知道的这个名称是链接在页面上与逻辑关联的?我怎样才能“获得”他们的名字?
ASPX
<asp:Repeater ID="Queue" runat="server">
<ItemTemplate>
<div>
<%# Eval("Name") %><br />
<asp:LinkButton runat="server" Text="Say Hello" OnClick="HelloHandler"></asp:LinkButton>
</div>
</ItemTemplate>
</asp:Repeater>
CS
public List<Person> People = new List<Person>();
protected void Page_Load(object sender, EventArgs e){
People.Add(new Person("Albert"));
People.Add(new Person("Bradley"));
People.Add(new Person("Chad"));
//etc...
Queue.DataSource = People;
Queue.DataBind();
}
public void HelloHandler(object sender, EventArgs e){
//?
}
编辑
为了澄清,我希望能够回到相应的Person对象的列表来自事件处理程序。
我试过了,但我需要引用回到列表中的对象。我确实想出了一个基于你在那里的解决方案。我现在将它发布。 – daniel 2011-06-07 18:02:11
现在的答案显示如何将物品ID传递回代码 – TheAlbear 2011-08-01 10:25:03