如何突出显示标签中的某个字词?

时间:2013-08-07 11:28:22

标签: c# label highlight

我一直在观看几个视频,我注意到你可以为它在RichTextBox中找到的每个单词突出显示或设置BackColor,我尝试使用Label进行此操作,这是我正在使用的项目,但我不能使用Label.Find和Label.SelectionBackColor等。有没有办法可以搜索我的标签中的单词并突出显示它?

2 个答案:

答案 0 :(得分:0)

您不能在标签中使用两种不同的前景/背景颜色。您可以将文本拆分为不同的标签,或者只使用richtextbox。

答案 1 :(得分:-1)

这是一种解决方法,创建一个RichTextBox并将其用作标签。

设置这些属性使其看起来像标签:

richTextBox.ReadOnly = true;
richTextBox.BorderStyle = BorderStyle.None;
richTextBox.BackColor = SystemColors.Control; // or whatever your background color is

解决禁用用户选择的问题:

richTextBox.Enabled = false;
richTextBox.SelectAll();
richTextBox.SelectionColor = SystemColors.ControlText; // or whatever you want the default text color to be
// you have to set the color or else it will be gray because of Enabled=false

编辑:我刚试过SelectAll();SelectionColor = SystemColors.ControlText之后,任何更改或添加文字都会将其保持黑色(除非当前SelectionStart位于文字的某个位置是不同的