Wpf 如何从GridView中绑定到ViewModel的属性
我使用的是MVVM设计模式,并且视图的Wpf 如何从GridView中绑定到ViewModel的属性,wpf,data-binding,xaml,mvvm,Wpf,Data Binding,Xaml,Mvvm,我使用的是MVVM设计模式,并且视图的DataContext被设置为ViewModel 在我看来,我有一个ListView/GridView,其中itemsource绑定到DataTable。其中一个GridViewColumns有一个CellTemplate,它显示一个按钮。我希望按钮的IsEnabled属性绑定到我的ViewModel的SelectButtonsEnabled属性 使用IsEnabled=“{Binding Path=SelectButtonsEnabled}”无效,因为我的
DataContext
被设置为ViewModel
在我看来,我有一个ListView/GridView
,其中itemsource
绑定到DataTable
。其中一个GridViewColumns
有一个CellTemplate
,它显示一个按钮。我希望按钮的IsEnabled
属性绑定到我的ViewModel的SelectButtonsEnabled
属性
使用IsEnabled=“{Binding Path=SelectButtonsEnabled}”
无效,因为我的DataTable
没有名为“SelectButtonsEnabled”的列。我试图绑定到的属性是整个ViewModel的全局属性,而不是特定于数据表的某一行
我想我需要某种相对资源
标记,但迄今为止我所有的尝试都失败了
谢谢。好吧,我不知道这是否是最简洁的方法,但这是有效的:
IsEnabled="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListView}}, Path=DataContext.SelectButtonsEnabled}"
嗯,我不知道这是否是最简洁的方法,但这是有效的:
IsEnabled="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListView}}, Path=DataContext.SelectButtonsEnabled}"