LinkButton의 OnClientClick 특성을 설정해야하지만 LinkButton이 바인딩 될 때까지이 값이 무엇인지 알 수 없습니다. 나는 리피터 바인딩 할 때 값을 설정하기 위해 노력하고있어,하지만 난하지 어떻게 'boundItem/데이터 컨텍스트'값을 얻는 방법 운동 ...ASP.NET 중계기 내에서 바인딩 된 항목을 얻는 방법
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<asp:LinkButton Text="HelloWorld" ID="Hyper1" runat="server" OnDataBinding="Repeater1_DataBinding" >
</asp:LinkButton>
</ItemTemplate>
</asp:Repeater>
protected void Page_Load(object sender, EventArgs e)
{
var list = new List<TestObject>();
list.Add(new TestObject() {TestValue = "testing1"});
list.Add(new TestObject() { TestValue = "testing2" });
list.Add(new TestObject() { TestValue = "testing3" });
this.Repeater1.DataSource = list;
this.Repeater1.DataBind();
}
public void Repeater1_DataBinding(object sender, EventArgs e)
{
var link = sender as HyperLink;
//link.DataItem ???
}
바운드 무엇을 현재의 행을 찾아 어쨌든 거기 수 항목은 무엇입니까?
"var dataItem = ..."부분을 Item, Header 또는 Footer 레코드인지 여부를 확인하는 if 문 안에 넣을 수 있습니다. 예를 들어, ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem) {...} – NotMe
'DataBinding'은 영향을주기 위해 올바른 이벤트입니다. 직접 '하이퍼 링크'컨트롤. 필드 값을 'HyperLink'컨트롤에 적용하는 방법을 알지 못하는 것 같습니다. – Kelsey