确定特定DataGridView单元格中的文本是否在换行



我有一个数据绑定的datagridview的形式,有一个文本列,能够被包装。刷新列时,即使行内容被换行(因此是多行),每行的高度也会恢复为单行高度。

我需要能够以编程方式确定特定行的列中的数据当前是否正在包装。是否有一个属性来检查数据是否足够长以使其多行?

我想你问了几个不同的问题;这两个问题的答案都是肯定的。

首先,文本的长度或格式。检查单元格的值是否为字符串,看看它是否包含换行符,或者它是否超过X个字符(我把想出一个好的X的练习留给你):

if(gridView.Rows[i].Cells[j].Value.ToString().Contains(Environment.NewLine)
      || gridView.Rows[i].Cells[j].Value.ToString().Length > x)
   ...

第二,您还可以确定一行当前是否以换行模式显示;如果它是,它的大小应该是水平和垂直的组合:

if(gridView.Rows[i].Cells[j].Style.WrapMode = DataGridViewTriState.True)
   ...

添加以下代码:

string nl = Environment.NewLine;
dataGridView.Rows.Add(str1 + nl + str2);

相关内容

  • 没有找到相关文章

最新更新