我目前正在做一些可能在很多例子中完成的事情。但经过一番搜索,我找不到任何东西。
我正在使用WPF标签控件,我正在尝试重新创建一些基本功能(您现在在所有互联网浏览器中都会看到),通过单击最后列出的标签的“+”标签来添加新标签。
我已经添加了一个新标签的“+”标签。我的问题是,我想在新标签之后移动'+'标签(因此再次显示结束标签)并将视图切换到刚刚创建的新标签。
我想的是:
void tiNewTab_Add(object sender, EventArgs e)
{
int idx = tabControl1.Items.Count;
tabControl1.SelectedIndex = idx - 1;
TabItem ti = new TabItemKPI();
tabControl1.Items.Add(ti);
tabControl1.Items.MoveCurrentToLast();
}
......会工作但没有运气:(
答案 0 :(得分:10)
尝试这样的事情:
tabControl1.Items.Insert(tabControl1.Items.Count-1,ti);
这样做是因为你总是至少有一个TabItem(+ 1)
然后按
选择第二个最后一个tabControl1.SelectedIndex=tabControl1.Items.Count-2;
答案 1 :(得分:0)
未经测试,但以下情况应该有效:
int idx = tabControl1.Items.Count;
tabControl1.SelectedIndex = idx - 1;
TabItem ti = new TabItem();
tabControl1.Items.Insert(tabControl1.Items.IndexOf(tabControl1.Items.Last()), ti);