在我的UserControl中,我有一个DataGrid和一个Button。我可以轻松地将Button的IsEnabled属性绑定到DataGrid的SelectedItems.Count属性。
例如,在我的UserControl中,我有...
<Button IsEnabled="{Binding ElementName=MyDataGrid, Path=SelectedItems.Count}" />
但是,我想对MainWindow中的Button进行同样的操作,在其中我也嵌入了相同的UserControl。
我想这样做,但是不起作用:
<Button IsEnabled="{Binding ElementName=MyUserControl, Path=MyDataGrid.SelectedItems.Count}" />
是否有一种方法可以纯粹在XAML中执行此操作,还是需要在ViewModel中创建一个反映DataGrid的SelectedItems.Count属性并将其绑定到MainWindow中的Button的属性?
谢谢!
答案 0 :(得分:0)
在UserControl中定义公共属性(以保留选定的项目),并将其绑定到datagrid的SelectedItem, 现在,您将可以通过ElementName和XPath或Path在主窗口中获取公共属性。