我正在慢慢推进我的标签系统。我希望能够单击按钮并添加新选项卡,同时保留其他选项卡和信息。
我已经成功使用会话并在测试中有效,但我添加了一个新选项卡,这很好,然后下次我点击按钮时它不再添加任何标签。
所以他们已经是屏幕上的一个,代码隐藏添加一个,然后无法再添加。有谁知道我的代码出了什么问题?
namespace Portal
{
public partial class Tabs : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnAddTab_Click(object sender, EventArgs e)
{
RenderExisting();
//ReRender();
AddTab();
}
void RenderExisting()
{
Session["tabs"] = TabContainer1;
}
void ReRender()
{
TabContainer1 = (AjaxControlToolkit.TabContainer)Session["tabs"];
}
void AddTab()
{
AjaxControlToolkit.TabContainer tbcDynamic = new AjaxControlToolkit.TabContainer();
//Load the session tabs
tbcDynamic = (AjaxControlToolkit.TabContainer)Session["tabs"];
//Create new tab
AjaxControlToolkit.TabPanel newtab = new AjaxControlToolkit.TabPanel();
//string name = "";
//short idx = 0;
//newtab.HeaderText = name;
//newtab.TabIndex = idx;
//Add new tab to dynamic tabs
tbcDynamic.Tabs.Add(newtab);
//Add dynamic tabs to on-screen tabs
TabContainer1 = tbcDynamic;
Session.Clear();
}
}
}
答案 0 :(得分:0)
我认为您不需要将其保留在Session
中。只需直接使用TabContainer1
void AddTab()
{
//Create new tab
AjaxControlToolkit.TabPanel newtab = new AjaxControlToolkit.TabPanel();
TabContainer1.Tabs.Add(newtab);
}