Dynamic pageview creation doesn't work

2 posts, 0 answers
  1. Nate
    Nate avatar
    6 posts
    Member since:
    Apr 2013

    Posted 30 Jan 2014 Link to this post

     
             protected void Page_Init(object sender, EventArgs e)
           {
               if (!Page.IsPostBack)
               {
                   AddPageView(tabstripPersoneel.FindTabByText("Personeelsfiche"));
               }
           }
     
           protected void Sidebar_TabClick(object sender, RadTabStripEventArgs e)
           {
               AddPageView(e.Tab);
               e.Tab.PageView.Selected = true; //NullReferenceException happens Here
           }
     
           private void AddPageView(RadTab tab)
           {
               RadPageView pageView = new RadPageView();
               pageView.ID = tab.Text;
               ContentMultiPage.PageViews.Add(pageView);
               tab.PageViewID = pageView.ID;
           }
     
           protected void ContentMultiPage_OnPageViewCreated(object sender, RadMultiPageEventArgs e)
           {
               string userControlName ="/Controls/"+ e.PageView.ID + "Weergave.ascx";
     
               Control userControl = Page.LoadControl(userControlName);
               userControl.ID = e.PageView.ID + "_userControl";
     
               e.PageView.Controls.Add(userControl);
           }



    I have 3 radstrips which call the Sidebar_Tabclick method, each nested in a different pageview in a multipage. The sidebar looks like this:

    <telerik:RadMultiPage runat="server" ID="SideMultiPage" SelectedIndex="0">
                        <telerik:RadPageView runat="server" ID="PageviewPersoneelsleden">
                            <telerik:RadTabStrip ID="tabstripPersoneel" runat="server" Orientation="VerticalLeft" OnClientTabSelecting="onTabSelecting" OnTabClick="Sidebar_TabClick">
                                <Tabs>
                                    <telerik:RadTab Text="Personeelsfiche" runat="server" Selected="True">
                                    </telerik:RadTab>
                                    <telerik:RadTab Text="Arbeidsovereenkomst" runat="server">
                                    </telerik:RadTab>
                                    <telerik:RadTab Text="Asset" runat="server">
                                    </telerik:RadTab>
                                    <telerik:RadTab Text="Certificaten" PageViewID="Certificaat" runat="server">
                                    </telerik:RadTab>
                                    <telerik:RadTab Text="Ervaringen" PageViewID="Ervaring" runat="server">
                                    </telerik:RadTab>
                                </Tabs>
                            </telerik:RadTabStrip>
                        </telerik:RadPageView>
                        <telerik:RadPageView ID="PageviewAfwezigheden" runat="server">
                             <telerik:RadTabStrip ID="tabstripAfwezigheden" runat="server" Orientation="VerticalLeft" OnTabClick="Sidebar_TabClick">
                                <Tabs>
                                    <telerik:RadTab Text="Afwezigheid inplannen" PageViewID="Afwezigheid" runat="server" Selected="True">
                                    </telerik:RadTab>
                                    <telerik:RadTab Text="Maandoverzicht afwezigheden" PageViewID="Maandoverzicht" runat="server">
                                    </telerik:RadTab>
                                    <telerik:RadTab Text="Jaaroverzicht afwezigheden" PageViewID="Jaaroverzicht" runat="server">
                                    </telerik:RadTab>
                                    <telerik:RadTab Text="Kalenderoverzicht" PageViewID="Kalender" runat="server">
                                    </telerik:RadTab>
                                </Tabs>
                            </telerik:RadTabStrip>
                        </telerik:RadPageView>
                        <telerik:RadPageView ID="PageviewWagens" runat="server">
                             <telerik:RadTabStrip ID="TabstripWagens" runat="server" Orientation="VerticalLeft" OnTabClick="Sidebar_TabClick">
                                <Tabs>
                                    <telerik:RadTab Text="Wagens" PageViewID="Wagen" runat="server" Selected="True">
                                    </telerik:RadTab>
                                    <telerik:RadTab Text="Tankkaarten" PageViewID="Tankkaart" runat="server">
                                    </telerik:RadTab>
                                    <telerik:RadTab Text="Technische onderhouden" PageViewID="Onderhoud" runat="server">
                                    </telerik:RadTab>
                                    <telerik:RadTab Text="Expertiseverslagen" PageViewID="Expertiseverslag" runat="server">
                                    </telerik:RadTab>
                                </Tabs>
                            </telerik:RadTabStrip>
                        </telerik:RadPageView>
                    </telerik:RadMultiPage>

    Each tab corresponds to a different custom control. the intent is to copy the workings of http://demos.telerik.com/aspnet-ajax/tabstrip/examples/multipage/dynamic-pageview-creation/defaultcs.aspx. When I execute this, the first pageview loads fine, but when I try to load the second one, it gives me a nullreferenceException on the line with the comment at the end. It seems like it doesn't assign Pageview a value.
  2. Nate
    Nate avatar
    6 posts
    Member since:
    Apr 2013

    Posted 30 Jan 2014 in reply to Nate Link to this post

    I asked a coworker for some assistance. I forgot to assign the MultiPageID Property on my tabstrip.
  3. UI for ASP.NET Ajax is Ready for VS 2017
Back to Top