使用Telerik将Control添加到Control集合
本文关键字:Control 集合 添加 使用 Telerik | 更新日期: 2023-09-27 18:19:32
我第一次使用Telerik,遇到了一个由于实现而无法解决的问题。我有一个MainPage.aspx,它有一个RadTabStrip和一个关联的RadMultiPage。在页面视图中,我有一些用户创建的控件(.ascx)页面,并且已经实现了它们,因此当选择某个选项卡时,ascx页面将显示在页面视图内。我一直在单独处理每个页面,现在我必须处理搜索页面功能,其中我在RadPageLayout中插入了一个RadGrid,如下所示:
<Rows>
<telerik:LayoutRow>
<Columns>
<telerik:CompositeLayoutColumn Span="12">
<Content>
<telerik:RadGrid ID="rgSearchResults" Width="700px" runat="server" AllowPaging="true" AllowSorting="true">
</telerik:RadGrid>
</Content>
</telerik:CompositeLayoutColumn>
</Columns>
</telerik:LayoutRow>
</Rows>
没有任何数据绑定等,我所要做的就是导航到搜索选项卡,但当我这样做时,我会收到一个令人沮丧的错误"Page cannot be null。Blah Blah Bla"我在网上查看了一下,发现我需要将控件添加到页面的控件集合中,但在我的实现中,我似乎找不到这样做的方法。我试图将其添加到search.ascx页面的"!IsPostBack"页面加载事件中,但我遇到了另一个错误。如果我试图将它添加到Main.aspx页面中,它仍然找不到它……在普通的asp.net/C#上从未遇到过这么多麻烦……请帮助!
您是否已在用户控件上注册Telerik程序集
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
你有runat=server的表单吗?PageLayout控件是否具有runat=server属性?
我试了一下,结果显示:
卸载UC:
<telerik:RadPageLayout runat="server" ID="RadPageLayout1">
<Rows>
<telerik:LayoutRow>
<Columns>
<telerik:CompositeLayoutColumn Span="12">
<Content>
<telerik:RadGrid ID="rgSearchResults" Width="700px" runat="server" AllowPaging="true" AllowSorting="true">
</telerik:RadGrid>
</Content>
</telerik:CompositeLayoutColumn>
</Columns>
</telerik:LayoutRow>
</Rows>
</telerik:RadPageLayout>
在主页中
<form id="form1" runat="server">
<asp:ScriptManager ID="Scriptmanager1" runat="server" />
<telerik:RadTabStrip runat="server" ID="RadTabStrip1" MultiPageID="RadMultiPage1">
<Tabs>
<telerik:RadTab Text="first" Selected="true"></telerik:RadTab>
<telerik:RadTab Text="second"></telerik:RadTab>
</Tabs>
</telerik:RadTabStrip>
<telerik:RadMultiPage runat="server" ID="RadMultiPage1">
<telerik:RadPageView runat="server" ID="RadPageView1" Selected="true">first page view</telerik:RadPageView>
<telerik:RadPageView runat="server" ID="RadPageView2">
second page view with grid
<uc1:myControl runat="server" ID="myControl1"></uc1:myControl>
</telerik:RadPageView>
</telerik:RadMultiPage>
</form>
您还可以在此处查看如何使用动态页面视图和用户控件:http://demos.telerik.com/aspnet-ajax/tabstrip/examples/multipage/dynamic-pageview-creation/defaultcs.aspx.请确保为您创建的每个动态控件添加ID。