2014-11-03 65 views
1

我在C#Datagridview中遇到了一個問題,那就是Datagridview的ColumnHeaders中有多行文本,我希望文本在兩行中居中。目前,它的表現居中的文本時,纔會有單行線,但在多的情況下,它的行爲是這樣的:C#DataGridview ColumnHeader多行文本中心或者右對齊

|L1  | 
|L2 Text | 

而且我想作爲

| L1 | 
| L2 Text. | 

我試圖性能

它可以出現
DG.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; 
DG.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; 

我沒有太多的要點上傳圖片或截圖,所以很抱歉。 任何幫助將不勝感激,在此先感謝。

回答

0

試試這個..

在你的GridView加載方法。

foreach(DataGridViewColumn col in dgvYourGridName.Columns) 
{ 
    col.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; 

} 
+0

不,這沒有奏效,Datagridview沒有這樣的事件,所以我嘗試了它的形式Load事件,但沒有更改。僅供參考,這是虛擬網格,所以我對此網格擁有屬性VirtualMode = true,並將數據加載到CellValueNeeded事件中。 – 2014-11-03 11:28:15

+0

檢查此.. http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.columns(v=vs.110).aspx – tarzanbappa 2014-11-03 11:30:21

+0

但在此示例中,其調整大小所有Non標題單元格和我只想對齊標題單元格的文本,因爲它的大小調整是完美的。 – 2014-11-03 11:40:46

2

我終於明白了。這段代碼適合我。

dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader; 
dgv.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; 

無論如何,謝謝。