使用Telerik将Control添加到Control集合中

时间:2014-08-26 16:53:15

标签: c# asp.net telerik radgrid ascx

我第一次使用Telerik并遇到了由于我的实施而无法解决的问题。我有一个MainPage.aspx,它有一个与之关联的RadMultiPage的RadTabStrip。在页面视图中,我有一些用户创建的控件(.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>

还没有任何数据绑定等,我尝试做的只是导航到搜索选项卡但是当我这样做时,我得到了令人沮丧的错误&#34; Page不能为空。 Blah Blah Blah&#34;我已经在线查看,发现我需要将控件添加到页面的控件集合中,但是通过我的实现,我似乎无法找到实现此目的的方法。我已经尝试将其添加到&#34;!IsPostBack&#34; search.ascx页面的页面加载事件,但我得到一个单独的错误。如果我尝试在Main.aspx页面中添加它仍然无法找到它...在常规asp.net/C#上从未遇到过这么多麻烦..请帮忙!

1 个答案:

答案 0 :(得分:0)

您是否在用户控件上注册了Telerik程序集:

<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>

你有一个runat = server的表单吗? PageLayout控件是否具有runat = server属性?

我试过这个并且出现了:

联合国大学:

<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。