如何调整datagrid' sColumns的大小?
我ColumnHeaderStyle
Datagrid
,现在我无法调整列数!
请帮帮我!
我对这段代码感兴趣。但它不起作用 CanUserResizeColumns ="真"
<Style x:Key="ColumnHeaderStyle" TargetType="{x:Type DataGridColumnHeader}" >
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="DataGridColumnHeader">
<StackPanel >
<DockPanel>
<Image DockPanel.Dock="Left" Source="/Images/Photo.png"/>
<TextBox Name="txtCaption" Text="{TemplateBinding Content}" />
</DockPanel>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<DataGrid Name="mainGrid" AutoGenerateColumns="False" IsReadOnly="True" AlternatingRowBackground="#FFEBEBFF"
ColumnHeaderStyle="{StaticResource ColumnHeaderStyle}">
</DataGrid>
答案 0 :(得分:0)
在您的情况下:您正在使用ColumnHeaderStyle,因此它限制了调整大小。
默认情况下,CanUserResizeColumns为true。
使用下面的代码代替使用ColumnHeaderStyle:
<DataGridTextColumn Header="Header1" Width="auto" IsReadOnly="True" Binding="{myUserControls:CultureAwareBinding Path=xxxxx}">
<DataGridTextColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="TextAlignment" Value="Right"></Setter>
</Style>
</DataGridTextColumn.ElementStyle>
<DataGridTextColumn.HeaderStyle>
<Style TargetType="DataGridColumnHeader">
<Setter Property="HorizontalContentAlignment" Value="Center" />
</Style>
</DataGridTextColumn.HeaderStyle>