C# MVVM将选定项从一个usercontrol绑定到另一个usercontrol
我有两个用户控件: -第一个包含一个树视图 -第二个包含一些字段 我想用usercontrol1中选择的treeviewitem名称更新usercontrol2中的文本框 这是我的主窗口的一部分。xamlC# MVVM将选定项从一个usercontrol绑定到另一个usercontrol,c#,wpf,xaml,mvvm,user-controls,C#,Wpf,Xaml,Mvvm,User Controls,我有两个用户控件: -第一个包含一个树视图 -第二个包含一些字段 我想用usercontrol1中选择的treeviewitem名称更新usercontrol2中的文本框 这是我的主窗口的一部分。xaml <Grid> ... <View:UserControl1 Name="mycontrol1" .../> <View:UserControl2 Name="mycontrol2" DataContext="{Binding ElementName
<Grid> ...
<View:UserControl1 Name="mycontrol1" .../>
<View:UserControl2 Name="mycontrol2" DataContext="{Binding ElementName=mycontrol1.CategoryTreeView, Path=SelectedItem}"/>
</Grid>
。。。
这是我的usercontrol1的一部分(“类别”是类别对象的列表):
以下是我的usercontrol2的一部分:
<Grid>
<TextBox Text="{Binding Name}"/>
</Grid>
我发现了一些示例,其中所有控件(treeview、textbox等)都位于一个xaml文件中,但如果它们位于两个usercontrols中,则不在其中
也许有人可以在这里帮助我?您可以对两个视图(用户控件)使用相同的视图模型,也可以使用
这两种方法都很有效这是一种将一个viewmodel用于两个控件的常见方法吗?这是一种方法还是一种方法?是否可以只使用xaml代码进行常规数据绑定,而不添加一些额外的c#代码?我想也许有一种方法可以将datacontext绑定到usercontrol1…我不认为是这样,但是如果可能的话,你不想这样做,因为你不想让你的视图相互交错
<Grid>
<TextBox Text="{Binding Name}"/>
</Grid>