我需要将Visibilitya绑定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 >