WPF DataGrid隐藏选择按钮

时间:2015-07-07 14:21:36

标签: c# wpf xaml datagrid wpfdatagrid

我尝试使用WPF DataGrid来呈现完全静态,平坦且只读的列式视图。

我已尝试使用ListView GridView,但提供的样式选项较少。

这是我到目前为止所得到的:

Screenshot

不幸的是,在列和每一行(灰色部分)中仍然有一些奇怪的按钮。

我已将IsHitTestVisible设置为false以防止用户点击它们,但理想情况下我希望他们不在那里(或者至少不可见)。

以下是我申请的XAML样式:

<Style x:Key="{x:Type DataGridColumnHeader}" TargetType="{x:Type DataGridColumnHeader}">
    <Setter Property="Background" Value="Transparent" />
    <Setter Property="FontWeight" Value="SemiBold" />
</Style>
<Style x:Key="{x:Type DataGrid}" TargetType="{x:Type DataGrid}">
    <Setter Property="Background" Value="Transparent" />
    <Setter Property="BorderThickness" Value="0" />
    <Setter Property="CanUserAddRows" Value="False" />
    <Setter Property="CanUserDeleteRows" Value="False" />
    <Setter Property="CanUserReorderColumns" Value="False" />
    <Setter Property="CanUserResizeColumns" Value="False" />
    <Setter Property="CanUserResizeRows" Value="False" />
    <Setter Property="CanUserSortColumns" Value="False" />
    <Setter Property="AutoGenerateColumns" Value="False" />
    <Setter Property="Margin" Value="5" />
    <Setter Property="GridLinesVisibility" Value="None" />
    <Setter Property="IsReadOnly" Value="True" />
    <Setter Property="SelectionUnit" Value="FullRow" />
    <Setter Property="IsHitTestVisible" Value="False" />
</Style>

除了那些按钮之外,这几乎是完美的......

1 个答案:

答案 0 :(得分:1)

这些是行标题,而不是我认为的按钮。 Datagrid具有显示/隐藏行和列标题的属性:

<Setter Property="HeadersVisibility" Value="Column" />

实际上,如果要保留列标题,则值必须为列。