c#中,RichTextBox在输入指定的符号后改变字体

本文关键字:符号 改变 字体 RichTextBox 输入 | 更新日期: 2023-09-27 17:49:42

我使用MySQL Connector . net从数据库中获取一些行。连接编码设置为UTF8。它获取所有行,然后通过事件逐行打印。最后有一段代码:

this.BeginInvoke((Action)delegate()
{
  this.messages.Text += Environment.NewLine + message; 
       // this.messages is a RichTextBox
});

全部添加好,但当messageaaarrtoń时,它会改变字体,因为该标志从Courier New变为默认。它总是改变字体,因为标志ń(这是波兰字母)。这很奇怪,因为如果我在RichTextBox中手写,一切都很好。

我怀疑编码问题,但如果我在UTF-8编码中读取数据,它应该没问题吧?

c#中,RichTextBox在输入指定的符号后改变字体

毕竟我找到了解决办法。在RichTextBox属性中,我设置:

this.messages.LanguageOption = RichTextBoxLanguageOptions.AutoKeyboard;

我在某个地方找到了它,令人惊讶的是它有效。