2010-06-28 58 views
7

每当我重写DataGridColumnHeader的默认模板时,即使CanUserResizeColumns对于数据网格设置为true,也不能再由用户调整其大小?有什么我需要添加到模板来恢复此功能?WPF Datagrid模板移除调整列大小的能力

这里是我的模板XAML:

<Style x:Key="ColumnHeaderStyle" TargetType="{x:Type DataGridColumnHeader}"> 
     <Setter Property="Template"> 
      <Setter.Value> 
       <ControlTemplate TargetType="DataGridColumnHeader"> 
        <Border BorderThickness="1" Margin="-1,0,0,0" Background="#f9f9f9" BorderBrush="Gray"> 
         <Grid> 
          <TextBlock Margin="2" Text="{TemplateBinding Content}" VerticalAlignment="Center" 
           HorizontalAlignment="Left" TextWrapping="Wrap"/>       
         </Grid> 
        </Border>       
       </ControlTemplate> 
      </Setter.Value> 
     </Setter> 
</Style> 

回答

5

Thumb控件添加到模板。您尚未发布模板标记代码,但可以查看完整示例this post

+0

我发布了我的模板代码。我很好奇,这可以做到没有任何代码背后?我在我的项目中使用了这个模板,所以我有多个相同方法的副本。 – wangburger 2010-06-28 14:39:10

+1

+1,但这仅仅是通过WPF的蹩脚,不必要的复杂和深思熟虑的另一个证明。不得不去重新调整列标题的大小。它永远不会令我惊叹。 – 2012-08-16 11:02:24

+1

请不要张贴链接作为答案。举例来说,第二个链接不再提供有关使用大拇指或调整列标题大小的任何信息。 – 2016-07-07 14:28:26