我正在努力消除/清除DataGrid
单元格的填充/边距。
感谢任何人都可以帮助您删除填充/边距。我使用DataGridTextColumn
是因为我需要TextBox
来编辑值。我已经设法通过设置TextBox
的样式来删除EditingElementStyle
的填充/边距,即;
<Style x:Key="tbEntry" TargetType="TextBox">
<Setter Property="Padding" Value="5" />
<Setter Property="Margin" Value="0" />
<Setter Property="Width" Value="45" />
</Style>
但是,TextBox
失去焦点后,我无法更改单元格的样式填充/边距。我尝试在CellStyle
的{{1}}或ElementStye
上进行设置,但是没有运气。
答案 0 :(得分:0)
Riza,您可以使用自定义文本列而不是DataGridTextColumn来控制非编辑模式下使用的边距。使用这个:
public class MyDataGridTextColumn : DataGridTextColumn
{
public MyDataGridTextColumn()
{
}
protected override FrameworkElement GenerateElement(DataGridCell cell, object dataItem)
{
TextBlock textBlock = base.GenerateElement(cell, dataItem) as TextBlock;
textBlock.Margin = new Thickness(2, 0, 2, 0);
return textBlock;
}
}
...然后根据需要调整边距。谢谢。