Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C#WPF中,如何在数据网格头之间放置垂直线_C#_Wpf_Datagrid - Fatal编程技术网

在C#WPF中,如何在数据网格头之间放置垂直线

在C#WPF中,如何在数据网格头之间放置垂直线,c#,wpf,datagrid,C#,Wpf,Datagrid,我有一个DataGrid,我尝试在标题中放置垂直线-就像DataGrid具有放置垂直和水平网格线的功能一样。。但是,我怎么能用网格线来分隔标题呢?现在我有 <DataGrid.Resources> <Style TargetType="{x:Type DataGridColumnHeader}"> <Setter Property="Background" Value="LightBlu

我有一个DataGrid,我尝试在标题中放置垂直线-就像DataGrid具有放置垂直和水平网格线的功能一样。。但是,我怎么能用网格线来分隔标题呢?现在我有

<DataGrid.Resources>
                    <Style TargetType="{x:Type DataGridColumnHeader}">
                    <Setter Property="Background" Value="LightBlue" />
                    <Setter Property="FontWeight" Value="Bold" />
                    <Setter Property="FontSize" Value="18" />
                    <Setter Property="FontFamily" Value="Calibri" />
                </Style>
            </DataGrid.Resources>

使用HeaderTemplate。实现这一点的快速方法:

<DataGrid>
    <DataGrid.Columns>
        <DataGridTextColumn Binding="{Binding Name}"
                            Header="{Binding HeaderName}">
            <DataGridTextColumn.HeaderTemplate>
                <DataTemplate>
                    <Border BorderThickness="0,0,1,0" 
                            BorderBrush="Black">
                        <TextBlock Text="{Binding Content, RelativeSource={RelativeSource Mode=TemplatedParent}}"
                                   Margin="5"/>                            
                    </Border>
                </DataTemplate>
            </DataGridTextColumn.HeaderTemplate>
        </DataGridTextColumn>
    </DataGrid.Columns>
</DataGrid>

使用HeaderTemplate。实现这一点的快速方法:

<DataGrid>
    <DataGrid.Columns>
        <DataGridTextColumn Binding="{Binding Name}"
                            Header="{Binding HeaderName}">
            <DataGridTextColumn.HeaderTemplate>
                <DataTemplate>
                    <Border BorderThickness="0,0,1,0" 
                            BorderBrush="Black">
                        <TextBlock Text="{Binding Content, RelativeSource={RelativeSource Mode=TemplatedParent}}"
                                   Margin="5"/>                            
                    </Border>
                </DataTemplate>
            </DataGridTextColumn.HeaderTemplate>
        </DataGridTextColumn>
    </DataGrid.Columns>
</DataGrid>

DataGridColumnHeader
是一个
按钮库
,您可以设置其
边框厚度
边框笔刷
的样式以实现您想要的效果,您也可能希望标题居中,因此我们还需要设置
HorizontalContentAlignment

<DataGrid.Resources>
      <Style TargetType="{x:Type DataGridColumnHeader}">
        <Setter Property="Background" Value="LightBlue" />
        <Setter Property="FontWeight" Value="Bold" />
        <Setter Property="FontSize" Value="18" />                    
        <Setter Property="FontFamily" Value="Calibri" />                    

        <Setter Property="HorizontalContentAlignment" Value="Center"/> 
        <Setter Property="BorderThickness" Value="0,0,1,0"></Setter>
        <Setter Property="BorderBrush" Value="Black"/>
     </Style>
</DataGrid.Resources>

DataGridColumnHeader
是一个
按钮库
,您可以设置其
边框厚度
边框笔刷
的样式以实现您想要的效果,您也可能希望标题居中,因此我们还需要设置
HorizontalContentAlignment

<DataGrid.Resources>
      <Style TargetType="{x:Type DataGridColumnHeader}">
        <Setter Property="Background" Value="LightBlue" />
        <Setter Property="FontWeight" Value="Bold" />
        <Setter Property="FontSize" Value="18" />                    
        <Setter Property="FontFamily" Value="Calibri" />                    

        <Setter Property="HorizontalContentAlignment" Value="Center"/> 
        <Setter Property="BorderThickness" Value="0,0,1,0"></Setter>
        <Setter Property="BorderBrush" Value="Black"/>
     </Style>
</DataGrid.Resources>