WPF - 用于处理Mainwindow中众多选项卡项的最佳代码体系结构

时间:2018-05-31 18:10:01

标签: c# wpf

我正在尝试创建一个WPF应用程序,其中主页(又名MainWindow)将包含多个选项卡。

我想知道什么是最好的方法/架构来封装特定于每个标签的代码而不是在同一个地方编码所有内容?

经过一些研究后我发现了UserControl类,但我一直认为该类是用来避免重复编码相同的逻辑。就我而言,我会在每个标签上使用它们一次。

1 个答案:

答案 0 :(得分:1)

根据您的偏好和所需的复杂程度,您可以使用MVVM或仅为每个标签创建UserControl以更好地分发代码。导致你的窗口的xaml看起来像:

<TabItem x:Name="tab_peerView" Header="Peers (Lobby)" Visibility="Visible">
    <Views:SomeUserControl1 />
</TabItem>
<TabItem x:Name="tab_PrepCheckList" Header="Prep" Visibility="Visible">
    <Views:SomeUserControl2 x:Name="view_prep" />
</TabItem>

执行此方法,您还可以将命令绑定和相应的Execute和CanExecute等内容卸载到UserControls。