WPF DataGrid单元格左侧边框及额外悬停项属性咨询
WPF DataGrid 两个问题的属性解决方案
问题1:单元格左侧边框消除
方案1:关闭网格线
你当前已将网格线画笔设为透明,但仍开启了GridLinesVisibility="All",直接修改该属性即可:
GridLinesVisibility="None"
方案2:移除单元格默认边框
通过CellStyle覆盖DataGridCell的默认边框设置:
<DataGrid.CellStyle> <Style TargetType="DataGridCell"> <Setter Property="BorderThickness" Value="0"/> </Style> </DataGrid.CellStyle>
补充:隐藏行标题边框
如果边框来自行标题(RowHeader),设置RowHeaderWidth="0"彻底隐藏行标题:
RowHeaderWidth="0"
问题2:额外项及悬停高亮处理
1. 修复XAML语法错误
你的代码中多了一个冗余的</DataGridTemplateColumn>标签,这会导致解析异常,产生额外渲染项,删除该标签即可解决核心问题。
2. 禁用默认新增行
保持已设置的CanUserAddRows="False",该属性会禁用DataGrid自带的空白新增行:
CanUserAddRows="False"
3. 消除无效行悬停高亮
如果仍有额外行的悬停效果,通过RowStyle覆盖默认的鼠标悬停样式:
<DataGrid.RowStyle> <Style TargetType="DataGridRow"> <Style.Triggers> <Trigger Property="IsMouseOver" Value="True"> <Setter Property="Background" Value="White"/> <!-- 与DataGrid背景匹配 --> </Trigger> </Style.Triggers> </Style> </DataGrid.RowStyle>
内容的提问来源于stack exchange,提问作者Quest
相关产品推荐
相关产品推荐

