.Net 3.5
I know that columns do not inherit the datacontext and, while reading other posts, I thought this would work:
Visibility="{Binding RelativeSource={x:Static RelativeSource.Self}, Path=(FrameworkElement.DataContext).IsColumnNameVisible, Converter={StaticResource boolToVisConverter}}"
However, of course, this is not so. The output window does not complain, it seems that the resource I found, but the viewmodel property, is called by a newer one.
This is the whole DG:
<tk:DataGrid VirtualizingStackPanel.IsVirtualizing="False" Grid.Column="0" AlternationCount="2" AreRowDetailsFrozen="True" AutoGenerateColumns="False" Background="Transparent" BorderThickness="0" CanUserAddRows="False" CanUserReorderColumns="True" CanUserResizeRows="False" GridLinesVisibility="None" ItemsSource="{Binding Employees}" SelectionMode="Single" ColumnHeaderStyle="{StaticResource columnHeaderStyle}" RowHeaderStyle="{StaticResource rowHeaderStyle}" CellStyle="{StaticResource cellStyle}" RowStyle="{StaticResource rowStyle}" ContextMenu="{StaticResource columnHeaderContextMenu}"> <tk:DataGrid.Resources> <ContextMenu x:Key="columnHeaderContextMenu" ItemsSource="{Binding ColumnHeaderContextMenuItems}" /> <Style TargetType="{x:Type ScrollBar}"> <Setter Property="Background" Value="Transparent"/> </Style> <Style TargetType="{x:Type tk:DataGridColumnHeader}"> <Setter Property="Background" Value="Transparent"/> </Style> </tk:DataGrid.Resources> <tk:DataGrid.Triggers> <EventTrigger RoutedEvent="tk:DataGridRow.MouseDoubleClick"> <EventTrigger.Actions> <BeginStoryboard Storyboard="{StaticResource showDetailGrid}"/> </EventTrigger.Actions> </EventTrigger> </tk:DataGrid.Triggers> <tk:DataGrid.Columns> <tk:DataGridTextColumn IsReadOnly="True" Header="test" Binding="{Binding Name, Mode=OneWay}" Visibility="{Binding RelativeSource={x:Static RelativeSource.Self}, Path=(FrameworkElement.DataContext).IsColumnNameVisible, Converter={StaticResource boolToVisConverter}}" /> </tk:DataGrid.Columns> </tk:DataGrid>
I read almost all the solutions to this problem and nothing works.
jrb Oct 10 '11 at 10:12 2011-10-10 10:12
source share