我有一个3列或更多列的DataGrid,可以调整其大小以拖动列标题之间的行。
当我减小第一列的宽度时,第二列会变宽。第三列的位置不变。
但是我要寻找的是一种行为,就像您从大多数扩展的Sheat应用程序中了解到的那样:当我减小OpenOffice Calc中第一列的宽度时,第一列右边的所有列都会向左移动。第二列不会变宽。
是否可以通过WPF DataGrid获得这种调整大小的行为?
这是XAML代码段。
<DataGrid Name="dataGrid" Grid.IsSharedSizeScope="True" AutoGenerateColumns="False" IsReadOnly="False"
SelectionUnit="FullRow" HeadersVisibility="None" RowHeaderWidth="0" BorderThickness="0 0 0 0"
SelectionChanged="dataGrid_SelectionChanged" SelectedCellsChanged="dataGrid_SelectedCellsChanged" PreviewMouseRightButtonDown="dataGrid_PreviewMouseRightButtonDown"
PreviewKeyDown="DataGrid_PreviewKeyDown">
<DataGrid.Columns>
<DataGridTemplateColumn Header="Title" CanUserResize="True" MinWidth="10" Width="*" CanUserSort="False" CanUserReorder="False">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<local:ListControlEntryControl>
<local:ListControlEntryControl.EntryContrainer>
<MultiBinding Converter="{StaticResource multiValueConverterGroup}">
<Binding />
<Binding Path="Trigger"/>
</MultiBinding>
</local:ListControlEntryControl.EntryContrainer>
</local:ListControlEntryControl>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Header="V1" CanUserResize="True" MinWidth="10" Width="50" CanUserSort="False" Visibility="Visible">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock>abc</TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="V2" CanUserResize="True" MinWidth="10" Width="50" CanUserReorder="False" Visibility="Visible" Binding="{Binding V2}" IsReadOnly="False"/>
</DataGrid.Columns>
</DataGrid>