C# WPF视图模型和绑定
我正在设计一个WPF应用程序,具有以下ViewModels:C# WPF视图模型和绑定,c#,wpf,xaml,mvvm,C#,Wpf,Xaml,Mvvm,我正在设计一个WPF应用程序,具有以下ViewModels: ProjectViewModel(包含GroupViewModels的ObservableCollection) GroupViewModel(包含ItemViewModels的ObservableCollection) ItemViewModel 我计划用一个窗口来表示这一点,该窗口包含多个选项卡,其中包含项 下面是它的外观: 在我的main窗口中.xaml: <Window.DataContext> &l
- ProjectViewModel(包含GroupViewModels的ObservableCollection)
- GroupViewModel(包含ItemViewModels的ObservableCollection)
- ItemViewModel
窗口
来表示这一点,该窗口包含多个选项卡
,其中包含项
下面是它的外观:
在我的main窗口中.xaml
:
<Window.DataContext>
<viewModel:ProjectViewModel/>
</Window.DataContext>
我计划绑定ViewModel以查看UIElements,如下所示:
- ProjectViewModel->(绑定到)窗口
- GroupViewModel->(绑定到)选项卡项
- ItemViewModel->(绑定到)一些自定义控件,目前仅显示为彩色矩形
TabControl.DataContext
被设置为一个TabItems列表,该列表根据用户操作添加/删除了项
但是,如果我将TabControl.DataContext绑定到TabItems列表,我是否会失去将其绑定到GroupViewModel的能力
有没有办法将两者结合起来
遵循MVVM模式,UIElement的DataContext不应该绑定到ViewModel,而应该绑定到另一个UIElement
有没有一种方法可以像我计划的那样将ViewModels绑定到我的视图元素,并且仍然执行动态选项卡
非常感谢您的任何想法或建议
Philip无需将每个嵌套集合绑定到可视化树的嵌套元素。
DataContext
依赖项属性通过该树继承
<Window.DataContext>
<viewModel:ProjectViewModel/>
</Window.DataContext>
<TabControl
ItemsSource="{Binding GroupViewModels}">
....
....
无需将每个嵌套集合绑定到可视化树的嵌套元素。DataContext
依赖项属性通过该树继承
<Window.DataContext>
<viewModel:ProjectViewModel/>
</Window.DataContext>
<TabControl
ItemsSource="{Binding GroupViewModels}">
....
....
无需将每个嵌套集合绑定到可视化树的嵌套元素。DataContext
依赖项属性通过该树继承
<Window.DataContext>
<viewModel:ProjectViewModel/>
</Window.DataContext>
<TabControl
ItemsSource="{Binding GroupViewModels}">
....
....
无需将每个嵌套集合绑定到可视化树的嵌套元素。DataContext
依赖项属性通过该树继承
<Window.DataContext>
<viewModel:ProjectViewModel/>
</Window.DataContext>
<TabControl
ItemsSource="{Binding GroupViewModels}">
....
....
为了使用此代码,我是否需要将我的GroupViewModel
扩展System.Windows.Controls.TabItem
?TabControl
的项不需要是TabItem
?为了使用此代码,我是否需要使我的GroupViewModel
扩展System.Windows.Controls.TabItem
?TabControl
的项不需要是TabItem
?为了使用此代码,我是否需要使我的GroupViewModel
扩展System.Windows.Controls.TabItem
?TabControl
的项不需要是TabItem
?为了使用此代码,我是否需要使我的GroupViewModel
扩展System.Windows.Controls.TabItem
?TabControl
的项不需要是TabItem
?