删除所有 DataGrid 行和单元格边框

Posted

技术标签:

【中文标题】删除所有 DataGrid 行和单元格边框【英文标题】:Removing all DataGrid row and cell borders 【发布时间】:2012-02-07 07:22:20 【问题描述】:

我想隐藏(或删除)我的数据网格中所有行(以及随后的单元格)的所有边框,想想基本的html table。我看了一遍,大多数问题似乎都是关于样式而不是隐藏它们。

我已经尝试过这样设置 BorderBrush 和 BorderThickness:

 <DataGrid.RowStyle>
     <Style TargetType="DataGridRow">
         <Setter Property="BorderBrush" Value="Transparent" />
         <Setter Property="BorderThickness" Value="0" />
     </Style>
  </DataGrid.RowStyle>

对 CellStyle 进行了同样的尝试,但没有骰子,仍然看到边框。

【问题讨论】:

与其在 WPF 中与之抗争,如果这是在网站上,您可以只使用 CSS。给 DataGrid 一个 ID,并在 CSS 中使用它来设置 borderwidth=0、borderstyle=none、bordercollapse=collapse 等等。 不是网站,只是 WPF。 HTML 表格的链接只是为了说明这个概念。 好的,那我猜那不是HTML表格。 我没有说过我需要一个实际的 HTML 表格,只是我希望我的 WPF 数据网格看起来像一个没有边框的基本 HTML 表格,因此“想想一个基本的 HTML 表格” 【参考方案1】:

设置GridLinesVisibility="None"怎么样?

<DataGrid GridLinesVisibility="None">
    ...
<DataGrid>

【讨论】:

不敢相信我错过了,这正是我想要的! :-) 在某些版本的 ASP 中,该属性为:&lt;DataGrid GridLines="None"&gt; ... &lt;DataGrid&gt; 当我遇到这个解决方案时,我正准备为 DataGridCell 编写一个模板 +1【参考方案2】:

你也可以这样做

 dataGrid.GridLinesVisibility = DataGridGridLinesVisibility.None;

【讨论】:

以上是关于删除所有 DataGrid 行和单元格边框的主要内容,如果未能解决你的问题,请参考以下文章

easyui怎么给某一单元格,点击保存前后颜色改变

DataGrid中的WPF样式单元格和行

更新单个单元格的 UWP DataGrid 样式

gridview怎样单击一个单元格,得到此单元格所在行和所在列的字段名

在 WPF DataGrid 的单个单元格上设置删除线的最佳方法?

Firefox 中不同单元格的边框宽度显示不同