当HeaderText
属性的长度达到某个字符限制并且文本中有空格时,WinForms会自动在标题中插入一个链接中断:
我想要的是什么:
+-----------------------+---
| Measurement Value (%) | ...
+-----------------------+---
我得到了什么:
+-----------------------+---
| Measurement Value | ...
|(%) |
+-----------------------+---
有足够的空间来显示所有标题单元格而不会断行,但无论出于何种原因,即使我将AutoSizeMode
设置为HeaderCell
,它仍会被插入。
如何在HeaderText
?
答案 0 :(得分:37)
ColumnHeadersDefaultCellStyle
的{{1}}属性有一个名为DataGridView
的布尔属性。默认情况下这是真的。将其设置为假,以设置所需的行为。
答案 1 :(得分:15)
您无法直接将其设置为false。将其设置为false的正确方法是:
this.dataGridView1.ColumnHeadersDefaultCellStyle.WrapMode = DataGridViewTriState.False;
答案 2 :(得分:3)
如果要在DataGridView控件中停止多行文本,则Wrap Mode应为false并设置填充
答案 3 :(得分:0)
您可以将 ColumnHeadersDefaultCellStyle.WrapMode
设置为 DataGridViewTriState.False
作为已经提出的其他答案
或
您可以用不可破坏的空格 \s
替换标头字符串中的空格 \u00A0
。第二种解决方案的好处是您可以在标头字符串中使用 \n
设置手动换行符并避免自动换行。例如:
+----------------------------------------------+
| A\u00A0very\u00A0long\u00A0first\u00A0Line\n |
| A\u00A0second\u00A0very\u00A0long\u00A0line |
+----------------------------------------------+
第一个解决方案是不允许手动换行(一切都是一行)。