如何在DataGridView列中右对齐文本?

Jay*_*ena 60 .net datagridview datagridviewcolumn winforms

如何在DataGridView列中右对齐文本?我正在编写.NET WinForms应用程序.

MUG*_*G4N 97

this.dataGridView1.Columns["CustomerName"].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight; 
Run Code Online (Sandbox Code Playgroud)

  • 同样:转到datagridview的Collections属性; 点击列; 在Appearance类别的顶部,将有一个DefaultCellStyle字段; 点击'...'; 将弹出一个CellStyle Builder窗口,其中包含Alignment等.因此,您可以在表单编辑器中设置属性,而无需求助于硬编码. (9认同)
  • (对于leetNightshade ...)表单编辑器中的设置值可以被认为是硬编码.通过在代码中设置值(如在MUG4N给出的解决方案中),可以根据数据类型更改对齐.例如,如果单元格包含数字数据,则使用右对齐;如果单元格包含文本数据,则使用左对齐.请记住,网格可以在运行时以编程方式填充(例如,如果它们不受数据限制).也可以从配置源读取对齐设置,并在运行时动态设置它们.干杯. (2认同)

dan*_*004 7

要在 dataGridCell 中设置对齐文本,您有两种方法:

为特定单元格设置对齐方式或为行的每个单元格设置对齐方式。

对于一列去 Columns->DataGridViewCellStyle

或者

对于每一列去 RowDefaultCellStyle

控制面板如下所示:

在此处输入图片说明


小智 6

我知道这已经很旧了,但是对于那些浏览这个问题的人来说,MUG4N 的答案将对齐使用相同默认单元格样式的所有列。我没有使用自动生成列,所以这是不可接受的。相反,我使用:

e.Column.DefaultCellStyle = new DataGridViewCellStyle(e.Column.DefaultCellStyle);
e.Column.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
Run Code Online (Sandbox Code Playgroud)

在本例中e来自:

Grd_ColumnAdded(object sender, DataGridViewColumnEventArgs e)  
Run Code Online (Sandbox Code Playgroud)