Muszę związać Visibility
z DataGridTemplateColumn
z właściwością spoza DataGrid.ItemsSource
, ponieważ muszę powiązać tę kolumnę we wszystkich wierszach z jedną właściwością wewnątrz ViewModel
, ale o ile wiem, po prostu można powiązać tę wartość z coś wewnątrz ItemsSource
lub należy użyć ElementStyle
i EditingElementStyle
ja już próbowałem ten kod:Jak powiązać DataGridTemplateColumn.Visibility z właściwością poza DataGrid.ItemsSource?
<DataGridTemplateColumn Header="post"
Visibility="{Binding DataContext.ProjectPostVisibility
, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=MvvmCommonControl:DataGrid}}"/>
i jestem pewien, że mój wiążący jest poprawna, ponieważ działa dobrze, gdy wiążę DataGridCell.Visibility
jak poniżej:
<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 >
można pokazać jakiś kod? – AbZy
@ AbZy: Dodałem kod powyżej. –