好的,所以我有一个名为PictureWindow的窗口显示图片(我已经删除了与制作标签无关的代码) . TabControl名为“itemsTab” . 使用按钮按下,我可以使新选项卡没问题 . 但是在被调用的方法中使用相同的操作是行不通的 . 使用buttonTab_Click方法创建一个新选项卡,newTab方法不会 .
我能看到的唯一真正的区别是由于发送者和RoutedEventArgs对象 - 这些如何影响这里的操作?或者还有其他我想念的东西?
提前致谢 .
编辑为了使事情更奇怪,newTab方法确实创建了一个新选项卡,但前提是它在PictureWindow构造函数方法中调用 . 如果我有以下内容,则会生成新选项卡 .
public PictureWindow(string current)
{
InitializeComponent();
newTab(current);
}
但是,如果我在其他任何地方调用该方法,它就不起作用 .
public partial class PictureWindow : Window
{
public PictureWindow(string current)
{
InitializeComponent();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
}
private void buttonClose_Click(object sender, RoutedEventArgs e)
{
this.Close();
}
private void buttonTab_Click(object sender, RoutedEventArgs e)
{
TabItem newTab = new TabItem();
newTab.Header = "New Tab!";
itemsTab.Items.Add(newTab);
}
public void newTab(string current)
{
TabItem newTab = new TabItem();
itemsTab.Items.Add(newTab);
}
}