반응형
HeaderTemplate에서 중첩 된 repeater의 상위 데이터에 액세스
간단한 질문, 간단한 답이 있는지 확실하지 않습니다!
그래서 여기에 코드가 있습니다. (읽기 쉽도록 많이 단순화했습니다)
<asp:Repeater runat="server>
<ItemTemplate>
<asp:Repeater runat="server">
<HeaderTemplate>
<h1>My header here for: <%# OuterContainer.DataItem.MyItemName %> </h1>
</HeaderTemplate>
<ItemTemplate>
My items code here
</ItemTemplate>
</asp:Repeater>
</ItemTemplate>
</asp:Repeater>
HeaderTemplate에서 어떻게 부모 repeater의 DataItem에 액세스 할 수 있습니까?
실제로 답을 찾았습니다.
사용하다:
<HeaderTemplate>
<%# ((RepeaterItem)Container.Parent.Parent).DataItem %>
</HeaderTemplate>
Paul이 제공 한 솔루션은 저에게 효과가 없었지만 효과가있었습니다.
<%# DataBinder.Eval(Container.Parent.Parent, "DataItem.YourProperty")%>
이것은 오래된 스레드이지만 다음을 추가하는 것이 적절 해 보입니다.
제 경우에는 2 개의 중첩 된 ASPxGridView 컨트롤 (DevExpress)이 있고 Container.Parent.Parent가 작동하지 않았습니다.
자식에서 부모의 데이터 항목에 액세스하려면 다음과 같이하십시오.
<%# DataBinder.Eval(Container.NamingContainer.NamingContainer, "DataItem.DbField")%>
상위 repeater의 속성을 검색하려면 일반적으로 다음을 수행합니다.
<%# DataBinder.Eval(((RepeaterItem)Container.Parent.Parent).DataItem, "ThePropertyName")%>
나는 아래와 같이 사용했습니다. 두 개의 Repeater가 Child repeater 내에서 ID Column의 Parent 값을 얻는 방법 아래에서 Parent 및 Child로 작동합니다.
<%# DataBinder.Eval(((RepeaterItem)Container.Parent.Parent).DataItem, "ID") %>
반응형
'Development Tip' 카테고리의 다른 글
텍스트 파일의 마지막 줄을 빨리 읽으시겠습니까? (0) | 2020.12.10 |
---|---|
직사각형에서 정사각형을 도출하는 것은 Liskov의 대체 원리를 위반하는 것입니까? (0) | 2020.12.10 |
Swift에서 UIView에 xib 할당 (0) | 2020.12.09 |
프로그램을 증명할 수없는 이유는 무엇입니까? (0) | 2020.12.09 |
Django : 길이가 고정 된 CharField, 어떻게? (0) | 2020.12.09 |