我的listbox包含以下列方式绑定到数据表的datagrid:
在代码背后:
listBox1.Items.Add(dt1);
这里的dt是表名。
在Xaml中:
<ListBox Grid.Row="0" MinHeight="305" HorizontalAlignment="Stretch" Name="listBox1" VerticalAlignment="Stretch" MinWidth="537" >
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel MinHeight="80" MinWidth="500" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="40"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<DataGrid Grid.Column="1" AutoGenerateColumns="True" MinHeight="75" HorizontalAlignment="Center" Name="dataGrid1" VerticalAlignment="Stretch" MinWidth="470" MaxWidth="900" ItemsSource="{Binding}" IsReadOnly="True" >
</DataGrid>
<CheckBox Grid.Column="0" Height="35" Width="25" Name="IsDone" HorizontalAlignment="Right" VerticalAlignment="Center"/>
</Grid>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
我想在datagrid中的所有列标题中添加复选框。您能否建议我如何在Wpf
中的datagrid内的所有列标题中添加复选框提前致谢
答案 0 :(得分:1)
您可以为您的DataGrid定义ColumnHeaderStyle
,并在该集合中为ContentTemplate
设置所有标题的复选框,如下所示:
<DataGrid>
<DataGrid.ColumnHeaderStyle>
<Style TargetType="DataGridColumnHeader">
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate>
<CheckBox Content="{Binding}"/>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</DataGrid.ColumnHeaderStyle>
</DataGrid>