DataGridTemplateColumn没有正确居中

时间:2014-04-22 18:02:08

标签: wpf datagrid wpfdatagrid datagridtemplatecolumn

我正在尝试创建一个CheckBox,只需要一次点击就可以选择它(与通常的两个相反 - 一个用于激活它,另一个用于选择)并且工作正常,但现在列边框不正确:

Comes out looking like this

这是我正在使用的XAML:

<DataGridTemplateColumn Header="To OC">
    <DataGridTemplateColumn.CellStyle>
        <Style TargetType="{x:Type DataGridCell}">
            <Setter Property="HorizontalAlignment" Value="Center" />
        </Style>
    </DataGridTemplateColumn.CellStyle>
    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <CheckBox IsChecked="{Binding Export, UpdateSourceTrigger=PropertyChanged}" />
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>

我在这里错过了什么来将柱边框放在正确的位置?

1 个答案:

答案 0 :(得分:0)

使用DataGridCheckBoxColumn

  

表示在其单元格中托管CheckBox控件的DataGrid列。

示例:

<DataGridCheckBoxColumn Header="To OC"
                        Width="SizeToHeader"
                        Binding="{Binding Path=Export, NotifyOnTargetUpdated=True}" />

在这种情况下,CheckBox位于DataGridCell的中间。此外,标准CheckBox表示它具有内容,但在DataGrid没有内容的情况下。也许这解释了弯曲的对齐,修复它也可以使用Margin