2010-01-20 63 views
3

我正在使用vb.net 2005.我想要澄清datagridview。DataGridView标题对齐

我用下面的属性设置标题文本的对齐方式:

DataGridView1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.BottomCenter 

此属性适用于所有标题单元格。我只想更改一个标题对齐属性。

这怎么办?

回答

14

要改变仅仅是一个标题单元格,你需要从DataGridView列集合中选择所需的列。

dataGridView1.Columns(0).HeaderCell.Style.Alignment = DataGridViewContentAlignment.BottomCenter; 

dataGridView1.Columns("ColumnName").HeaderCell.Style.Alignment = DataGridViewContentAlignment.BottomCenter; 

我已经展示了两个例子 - 一个使用列集合中的列索引,另一个使用给列赋予的名称。

DataGridView中的每一列都有一个HeaderCell属性,其中可以使用DataGridViewContentAlignment枚举中的值设置Style.Alignment。

另外需要注意的是,这些对齐会受列中排序字形的影响。如果对齐方式没有出现您的预期,则下面的代码有时可以通过删除排序字形来解决问题。

dataGridView1.Columns(0).SortMode = DataGridViewColumnSortMode.NotSortable; 
+1

排序字形参考解决了我的问题。我想这只是隐藏的,但它不允许文本完全靠近右边界。谢谢! – 2013-01-02 16:44:14

0

对于列你可以做到这一点

DataGrid d = new DataGrid(); 
d.Columns[0].HeaderStyle.VerticalAlign = VerticalAlign.Bottom; 

对于细胞含量你可以做到这一点

DataGrid d = new DataGrid(); 
d.Columns[0].ItemStyle.VerticalAlign = VerticalAlign.Bottom; 

编辑: 刚刚意识到你在问GridView的 - 这将对此也一样

eg 
GridView gv = new GridView(); 
gv.Columns[0].ItemStyle.VerticalAlign = VerticalAlign.Bottom; 

希望这有助于

+0

我想数据网格视图不是数据网格。 datagridview没有此属性。请帮助我先生 – somu 2010-01-20 12:25:08

+1

对不起,您的数据标记为'DataGrid' - 您也可以接受一些答案,以鼓励其他人帮助您 – Matt 2010-01-20 12:29:18

+0

感谢您的帮助 – somu 2010-01-20 12:58:39

0

datagridview.Columns(林提起).HeaderCell.Style.Alignment = DataGridViewContentAlignment.BottomCenter

这里林提起指columnno或ID

0

变化

DataGridView1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.BottomCenter 

DataGridView1.Columns[1].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; 
2

有列对象,它允许您访问的样式上的属性HeaderCell

dataGridView1.Columns(0).HeaderCell.Style.Alignment 
    = DataGridViewContentAlignment.BottomCenter