我需要将Visibility
a绑定DataGridTemplateColumn
到外部的属性DataGrid.ItemsSource
,因为我需要将所有行中的这一列绑定到内部的一个属性ViewModel
,但据我所知,您可以将其绑定到内部的某个属性,ItemsSource
或者您应该使用ElementStyle
,EditingElementStyle
我已经尝试过这段代码:
<DataGridTemplateColumn Header="post"
Visibility="{Binding DataContext.ProjectPostVisibility
, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=MvvmCommonControl:DataGrid}}"/>
而且我确定我的绑定是正确的,因为当我绑定DataGridCell.Visibility
以下内容时它可以正常工作:
<DataGridTemplateColumn Header="post">
<DataGridTemplateColumn.CellStyle>
<Style TargetType="DataGridCell">
<Setter Property="Visibility" Value="{Binding DataContext.ProjectPostVisibility,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=MvvmCommonControl:DataGrid}}"/>
</Style>
</DataGridTemplateColumn.CellStyle>
</DataGridTemplateColumn >