WPF - 如何从控件内部调用mainwindow tabitems

时间:2009-12-05 01:01:07

标签: c# wpf tabcontrol

我在主窗口中有tabcontrol。我用自定义控件创建的不同tbas(用于编辑,添加等)。我希望能够从控件内部处理其他选项卡,因此,例如,当我单击某些表单中的提交时,它会激活特定的其他选项卡。

我试过

       BaseWindow n = new BaseWindow();
        n.SearchTab.Visibility = System.Windows.Visibility.Hidden;

显然,这并不能解决问题。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

我会考虑在这里修改你的架构。

一个选项是让标签内的自定义控件(UserControls?)显示Routed Event。然后,您的主窗口可以订阅路由事件(在主窗口级别)并处理应用程序导航。

从设计的角度来看,这更清晰,因为用户控件不需要知道其他控件,他们只是说“我按下这个按钮”,主窗口决定该事件意味着显示另一个窗口。如果您更改了标签,则不会破坏所有内容,因为这样可以使标签之间的耦合更低。