динамически генерируемая проблема просмотра страниц - PullRequest
1 голос
/ 24 мая 2010

Я создал функцию динамической вкладки. Когда я создаю динамическую вкладку, она создает просмотр страницы для этой вкладки. Но когда я удалил эту вкладку, просмотр страницы не удаляется. Может ли кто-нибудь помочь мне исправить это.

using System;

с использованием System.Data; используя System.Configuration; использование System.Collections; использование System.Web; использование System.Web.Security; использование System.Web.UI; использование System.Web.UI.WebControls; использование System.Web.UI.WebControls.WebParts; использование System.Web.UI.HtmlControls; использование Telerik.WebControls; используя Telerik;

публичный частичный класс Radstrip2: System.Web.UI.Page { защищенный System.Web.UI.WebControls.Label PageContent; защищенный System.Web.UI.WebControls.Repeater BuildingSummary; защищенный Telerik.WebControls.PageView PageView1;

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        Tab tab = new Tab();
        tab.Text = string.Format("New Page {0}", 1);
        RadTabStrip1.Tabs.Add(tab);

        PageView pageView = new PageView();
        RadMultiPage1.PageViews.Add(pageView);

        BuildPageViewContents(pageView, RadTabStrip1.Tabs.Count);
        RadTabStrip1.SelectedIndex = 0;

    }
}

private void BuildPageViewContents(PageView pageView, int index)
{
    pageView.ID = "Page " + index.ToString();
    pageView.Controls.Add(new LiteralControl(" <B>New page</B>" + (index).ToString()));
}

protected void Button1_Click(object sender, EventArgs e)
{

    Tab tab = new Tab();
    tab.Text = string.Format("New Page {0}", RadTabStrip1.Tabs.Count + 1);
    RadTabStrip1.Tabs.Add(tab);

    PageView pageView = new PageView();
    pageView.ID = "Page " + pageView.Index.ToString();
    RadMultiPage1.PageViews.Add(pageView);

    BuildPageViewContents(pageView, RadTabStrip1.Tabs.Count);
    RadTabStrip1.SelectedIndex = RadTabStrip1.SelectedIndex + 1;
    RadMultiPage1.SelectedIndex = RadTabStrip1.SelectedIndex;

}

protected void Button2_Click(object sender, EventArgs e)
{
    Tab currentTab = RadTabStrip1.InnerMostSelectedTab;

    if (currentTab != null)
    {
        ITabContainer owner = currentTab.Owner;
        owner.Tabs.Remove(currentTab);
        //RadMultiPage1.PageViews.Remove(currentTab.PageView);
        if (owner.Tabs.Count > 0)
        {
            owner.SelectedIndex = 0;
        }
    }
}

protected void RadMultiPage1_PageViewItemCreated1(PageView view, int viewIndex)
{
    BuildPageViewContents(view, viewIndex + 1);
}

}

1 Ответ

1 голос
/ 25 мая 2010

Я вижу, что в вашем методе Button2_Click () вы удаляете текущую выбранную вкладку, но не удаляете текущий просмотр страницы. Вы можете попробовать с:

    RadMultiPage1.PageViews.RemoveAt(RadMultiPage1.SelectedIndex);

Это должно удалить текущий выбранный вид страницы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...