在TabControl
的TabItem
中是否可以打开另一个Window
?
我想这样做的原因是,如果我在TabControl
中有5个TabItem
,那么我编写所有这些TabItem
及其相关操作的Window
文件将会变得非常大。因此,如果每个TabItem
都可以拥有自己的Window
文件,那将会很好。
或者你如何解决控制TabControl
的Window
文件过大的问题?
在TabControl
的TabItem
中是否可以打开另一个Window
?
我想这样做的原因是,如果我在TabControl
中有5个TabItem
,那么我编写所有这些TabItem
及其相关操作的Window
文件将会变得非常大。因此,如果每个TabItem
都可以拥有自己的Window
文件,那将会很好。
或者你如何解决控制TabControl
的Window
文件过大的问题?
<Window ...
xmlns:local="clr-namespace:MyNamespace"
>
<TabControl>
<TabItem Header="FirstTab">
<local:MyFirstTabUserControl/>
</TabItem>
<TabItem Header="SecondTab">
<local:MySecondTabUserControl/>
</TabItem>
<TabItem Header="ThirdTab">
<local:MyThirdTabUserControl/>
</TabItem>
</TabControl>
</Window>
每个TabUserControl实际上都是一个简单的UserControl,因为TabItem可以作为其自己的子控件托管任何控件。
WindowsType oWindow = new WindowType();
TabItem oTab = new TabItem();
oTab.Content = oWindow.Content;
你可以像之前提到的那样使用UserControl。
但是你也可以使用Page控件。每个“窗口”都将是一个页面,选项卡中将有一个NavigationControl。我以前使用过这种方法,效果很好。我更喜欢使用UserControl路线,但两种方法都是有效的。