[英]Highlight differences between strings on winform
我希望有人能在这里帮助我,并且这个问题不会太模糊。
我正在尝试确定一种可以突出显示 winform 中两个文本字符串之间差异的方法。
我在数据网格的一列中有原始字符串,在第二列中有要比较的字符串。 我想突出显示数据网格视图本身中比较字符串的不同之处。
例子:
Thanks for the hep
Thanks for the help!!
哪里的l
和两个!
将被突出显示
我尝试了以下方法(在上一篇文章中向 Bouam 寻求帮助):
for (int i = 0; i < TextProcessingResults.RowCount; i++)
{
if (TextProcessingResults.Rows[i].Cells[1].Value != null)
{
if ((string)TextProcessingResults.Rows[i].Cells[1].Value != (string)TextProcessingResults.Rows[i].Cells[2].Value)
{
TextProcessingResults.Rows[i].DefaultCellStyle.ForeColor = Color.Red;
}
}
}
但这只会突出显示哪些行在字符级别不同。 我对这一切都不熟悉,所以这是一个疯狂的尝试吗?
有人可以帮助或指出我有用的资源吗?
您可以基于RichTextBox
创建一个新的DatGridViewColumn
,然后使用新的富文本列来突出显示富文本中的差异。
这可能会帮助您:
这是基于此的输出:
您可以应用需要比较字符串与列的差异的算法,并使用此DataGridViewRichTextBoxColumn
突出显示差异。
要了解有关创建自定义 datagridview 列类型的更多信息,您可以查看为 DataGridView 控件构建自定义 NumericUpDown 单元格和列。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.