3

我正在使用 Telerik 的 AJAX 控件,但有一个小问题。在我的应用程序中,用户输入“周”数,然后程序将 RadPane 动态添加到中继器(使用拆分器以便他们可以修改大小),其中 RadGrid 位于窗格内。

我有以下标记:

<telerik:RadSplitter ID="splt" runat="server" Width="100%">              
<asp:Repeater ID="rptSplitter" runat="server" OnItemDataBound="rptSplitter_ItemDataBound">
<ItemTemplate>
<telerik:RadPane ID="pane" runat="server">
<asp:Label ID="lblText" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"From") %>'></asp:Label>
<telerik:RadGrid ID="gv" runat="server" AutoGenerateColumns="false">
<MasterTableView runat="server" DataKeyNames="ID">
<Columns>
<telerik:GridBoundColumn DataField="ConsignmentNo" HeaderText="Consignment" SortExpression="ConsignmentNo">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Customer" HeaderText="Customer" SortExpression="Customer"></telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
</telerik:RadPane>
</ItemTemplate>
<SeparatorTemplate>
<telerik:RadSplitBar runat="server"></telerik:RadSplitBar>
</SeparatorTemplate>
</asp:Repeater>
</telerik:RadSplitter>

然而,当绑定中继器时,我得到以下异常(好吧,异常不显示,但我可以在网格的 itemdatabound 事件中“看到”它):

“RadPane 必须放在 RadSplitter 控件内。”

关于如何以某种方式使其工作的任何想法?

4

1 回答 1

0

我想您可以通过将转发器控件中的所有内容放入用户控件来解决此问题。放弃中继器控件,然后循环浏览您的集合,动态添加其中包含用户控件的窗格。

Telerik 有一个动态添加窗格到拆分器的演示

于 2012-05-15T14:48:29.107 回答