2014-01-13 151 views
1

我有一個DataGridView。一些列保存長文本數據,所以我已經設置:我可以在DataGridView中只有換行符換行的列嗎?

_dataGridView.DefaultCellStyle.WrapMode = DataGridViewTriState.True; 

這些列打破空格以及回車。

我想將列擴展爲文本中最長的行,同時包裝回車。所以不要包裝在空間上。

我該怎麼做?

添加這個不會做我想要的。

_dataGridView..AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; 

回答

2

嘗試調用:

_dataGridView.AutoResizeColumns(); 

後,您將數據源。

你也可以調整與選擇特定的列:

_dataGridView.AutoResizeColumn(0, DataGridViewAutoSizeColumnMode.AllCellsExceptHeader); 

編輯,這個工作對我來說:

enter image description here

private void Form1_Load(object sender, EventArgs e) 
     { 
      List<MyClass> myList = new List<MyClass>(); 

      myList.Add(new MyClass() { URL ="AAAAAAAAAAAAA AAAAAAAAAAAAA \r AAAAAAAAAAAAAA" }); 
      myList.Add(new MyClass() { URL = "AAAAAAAAAAAAAA AAAAAAAAAAAA \r AAAAAAAAAAAAAA" }); 
      myList.Add(new MyClass() { URL = "AAAAAAAAAAAAAAA AAAAAAAAAAA \r AAAAAAAAAAAAAA" }); 
      myList.Add(new MyClass() { URL = "AAAAAAAAAAAAAAAA AAAAAAAAAA \r AAAAAAAAAAAAAA" }); 


      dataGridView1.DataSource = myList; 
      dataGridView1.DefaultCellStyle.WrapMode = DataGridViewTriState.True; 
      dataGridView1.AutoResizeColumns(); 
      dataGridView1.AutoResizeRows(); 
     } 
+0

這並不是爲了使用WrapMode因爲工作我必須設定; _dataGridView.AutoSizeRowsMo​​de = DataGridViewAutoSizeRowsMo​​de.AllCells;並停止AutoResizeColumns();從工作 – Richard210363

+0

編輯答案。 – user3185569

+0

你是對的。用dataGridView1.AutoResizeRows()替換_dataGridView.AutoSizeRowsMo​​de = DataGridViewAutoSizeRowsMo​​de.AllCells;工作正常。謝謝。 – Richard210363

相關問題