【发布时间】:2023-03-10 22:31:02
【问题描述】:
我正在使用 WinForms 和 RichTextBox 控件开发应用程序。此控件允许对 RTF 格式进行不同的更改,使用属性来更改所选文本的字体。我有一个按钮可以在文本上切换粗体:
richTextBoxEditor.SelectionFont = new Font(richTextBoxEditor.SelectionFont,
richTextBoxEditor.SelectionFont.Style ^ FontStyle.Bold);
我的其他按钮(斜体、下划线)具有相同的代码,但 FontStyle.Bold 部分已更改为适当的格式。
现在的问题是,如果我写“Hello World”并将“Hello”更改为斜体,然后尝试将整个“Hello World”更改为粗体,“Hello”会失去斜体。我理解它为什么这样做(因为整个选择的枚举是空的,所以当我切换粗体时,斜体标志保持为 0),但我正在尝试找到一种方法来克服这个问题。我想不出除了逐个字符和单独改变风格之外的任何事情。
你们有什么更好的主意吗?
谢谢。
【问题讨论】: