2
是否有可能在運行時重新排序中繼器控制中的行。例如:如果我有如下所示的中繼器控制。如果我必須在運行時更改項目模板中的表格行順序,該怎麼辦?就像我需要顯示第一行中的特殊請求,然後根據定義的序列獲得第二行和第三行中的首選項。我知道我可以通過製作動態中繼器來實現。但是有沒有其他方法?中繼器控制中的項目順序
<asp:Repeater ID="repGuestInformation" ClientIDMode="AutoID" runat="server" OnItemDataBound="repGuestInformation_ItemDataBound">
<HeaderTemplate>
<table>
</HeaderTemplate>
<ItemTemplate>
<asp:Repeater ID="repGuestEventInformation" runat="server" OnItemDataBound="repGuestEventInformation_ItemDataBound">
<%-- <HeaderTemplate>
</HeaderTemplate>--%>
<ItemTemplate>
<tr>
<td>Registrants</td>
<td></td>
<td><asp:Label ID="lblCost" runat="server" Text="Cost" /></td>
<td></td>
</tr>
<tr>
<td valign="top">
<asp:Literal ID="ltlRegistrant" runat="server" />
<asp:DropDownList ID="ddlGuest" runat="server" OnSelectedIndexChanged="ddlGuest_SelectedIndexChanged" AutoPostBack="true" />
<asp:HiddenField ID="hfRegistrantName" runat="server" />
</td>
<td>
<table>
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td></tr>
<tr>
<td>
<%-- Benefits --%>
<asp:Label ID="lblConstituentBenefits" runat="server" Text="Benefits" ></asp:Label>
</td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td>
<asp:CheckBoxList ID="chkBoxListRegistrantBenefits" runat="server" AutoPostBack="true"
OnSelectedIndexChanged="chkBoxListRegistrantBenefits_SelectedIndexChanged" >
</asp:CheckBoxList>
</td>
<td></td>
</tr>
<tr>
<td>
<%-- Preference--%>
<asp:Label ID="lblConstituentPreference" runat="server" Text="Preference" ></asp:Label>
</td>
<td></td>
<td></td>
</tr>
<asp:Repeater ID="repEventPreference" runat="server" OnItemDataBound="repEventPreference_ItemDataBound">
<ItemTemplate>
<tr>
<td></td>
<td>
<asp:Literal ID="ltlEventPreference" runat="server" />
<asp:HiddenField ID="hfID" runat="server" />
</td>
<td>
<asp:DropDownList ID="ddlEventPreference" runat="server" AppendDataBoundItems="true"
AutoPostBack="true" OnSelectedIndexChanged="ddlEventPreference_SelectedIndexChanged">
</asp:DropDownList>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
<tr>
<td>
<%-- Special Requests--%>
<asp:Label ID="lblConstituentSpecialRequest" runat="server" Text="Special Requests" ></asp:Label>
</td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td>
<asp:CheckBoxList ID="chkBoxListSR" runat="server" AutoPostBack="true" OnSelectedIndexChanged="chkBoxListSR_SelectedIndexChanged">
</asp:CheckBoxList>
</td>
<td></td>
</tr>
<tr>
<td>
<asp:Panel ID="registrantAttPanel" runat="server" />
</td>
<td></td>
<td></td>
</tr>
</table>
</td>
<td valign="top" style="padding-top:7px;">
<asp:Literal ID="ltlCost" runat="server" /><asp:HiddenField ID="hfID" runat="server" />
</td>
<td valign="top">
<asp:Button ID="btnClearRow2" CausesValidation="false" runat="server" Text="CLEAR" OnClick="btnClearRow2_Click" />
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
我該如何重新訂購集合? – 2011-12-22 09:58:32
@ user1075000 - http://stackoverflow.com/questions/3630687/how-to-sort-an-ienumerablestring – Oded 2011-12-22 09:59:14
基本上我有兩個重新排序中繼器內的行。像第一排可以是第二排,第二排可以是第一排。 – 2011-12-22 10:06:19