2011-10-30 35 views
11

Tengo un DataGrid así:Cómo configurar el estilo de encabezado de DataGrid en WPF

<DataGrid AutoGenerateColumns="False" Height="221" HorizontalAlignment="Center" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" 
       Margin="6,269,0,0" Name="dataGrid1" VerticalAlignment="Center" Width="875" SelectionChanged="dataGrid1_SelectionChanged"> 
     <DataGrid.Columns > 
      <DataGridTextColumn x:Name="Id" Header="ID" Binding="{Binding Path=Key}" HeaderStyle=""> 
      </DataGridTextColumn> 
      <DataGridTemplateColumn Header="Image" Width="SizeToCells" IsReadOnly="True" MinWidth="80"> 
       <DataGridTemplateColumn.CellTemplate> 
        <DataTemplate> 
         <Image Width="16" Height="16" Source="{StaticResource MyImageSource}" HorizontalAlignment="Center" VerticalAlignment="Center"/> 
        </DataTemplate> 
       </DataGridTemplateColumn.CellTemplate> 
      </DataGridTemplateColumn> 
     </DataGrid.Columns> 
    </DataGrid> 

Cómo puedo centrar DataGrid Header? y aplicar estilo para eso?

gracias


Editar 1):

después de escribir este código:

<DataGrid.ColumnHeaderStyle> 
      <Style TargetType="{x:Type DataGridColumnHeader}"> 
       <Setter Property="FontWeight" Value="Bold" /> 
       <Setter Property="HorizontalAlignment" Value="Center" /> 
       <Setter Property="HorizontalContentAlignment" Value="Center" /> 
      </Style> 
     </DataGrid.ColumnHeaderStyle> 

columnas de la cuadrícula se convierten en:

enter image description here

¿Por qué?

Respuesta

14

para evitar el efecto de la cabecera colapso simplemente corregir su estilo de esta manera:

<Setter Property="HorizontalAlignment" Value="Stretch" /> 
    <Setter Property="HorizontalContentAlignment" Value="Center" /> 
+4

Sin necesidad de que el como "estiramiento" es el defecto. –

Cuestiones relacionadas