조언 추구 : DropdownList 값을 기반으로 Formview 업데이트
-
20-08-2019 - |
문제
인사말!
해당 FormView 컨트롤 내에서 DropdownList를 선택하여 FormView에 데이터를 표시하는 방법에 대한 조언을 찾고 있습니다. 예를 들어 다음과 관련하여 USERCONTROL이 있습니다.
<asp:XmlDataSource ID="xdsMyXmlData" runat="server" EnableCaching="false" XPath="Root/Membership" />
<asp:FormView ID="fvwMyFormView" runat="server" DataSourceID="xdsMyXmlData">
<ItemTemplate>
<div>
<h2><%# XPath("Title") %></h2>
<fieldset>
<asp:DropDownList ID="ddlMemberTypes" runat="server" DataSource='<%# XPathSelect("MenuItems/*") %>'></asp:DropDownList>
</fieldset>
<table>
<thead>
<tr>
<th><%# XPath("Columns/Name") %></th>
<th><%# XPath("Columns/Age") %></th>
<th><%# XPath("Columns/DateJoined")%></th>
</tr>
</thead>
<tbody>
<asp:Repeater ID="rptMembershipInfo" runat="server" DataSource='<%# XPathSelect("Members/*") %>'>
<ItemTemplate>
<tr>
<th><%# XPath("Data/Name") %></th>
<td><%# XPath("Data/Age") %></td>
<td><%# XPath("Data/DateJoined") %></td>
</tr>
</ItemTemplate>
</asp:Repeater>
</tbody>
</table>
</div>
</ItemTemplate>
</asp:FormView>
UserControl의 onload ()는 지금까지 다음과 같습니다.
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
string l_XmlData = MyControllerClass.GetMembershipTableXml(0);
xdsMyXmlData.Data = l_XmlData;
}
해당 XML을 검색 한 다음 FormView의 값을 채우는 데 사용하기 위해 DropdownList의 선택된 항목의 값을 GetMembershiptablexml ()로 전달할 수 있습니다. 이것을하는 가장 좋은 방법은 무엇입니까? 응답 수행. 선택한 드롭 다운리스트 값을 쿼리 문자열 변수로 사용하여 현재 페이지로 다시 적용 되나요? 더 나은 접근 방식이 있기를 바랍니다. 어떻게 생각해?
해결책
DropdownList에서 OnSelectedItemChanged의 이벤트를 만들 수 있습니다. 이 경우 선택한 항목을 잡고 getMembershiptableXML 기능을 호출 할 수 있습니다.
마지막으로 FormView Control에서 Databind를 호출하여 값을 업데이트하는 것을 잊지 마십시오. :)
나 생각한다 그것이 당신이 추구하는 것입니다.
제휴하지 않습니다 StackOverflow