C# RichTextBox中的粗体文本类似于word pad
我正在开发一个小的文本编辑器,我希望文本加粗功能类似于MS Word和写字板C# RichTextBox中的粗体文本类似于word pad,c#,C#,我正在开发一个小的文本编辑器,我希望文本加粗功能类似于MS Word和写字板 如果选择粗体,则文本应以粗体书写 如果取消选择粗体,则文本应为常规文本 若我选择一些文本并按粗体,它应该是粗体的,其余的文本应该保持规则 如果我选择已经加粗的文本并选择加粗,那么它应该成为常规文本 我尝试了MSDN中的以下代码,但它没有按照我想要的方式工作。请帮忙 if (richTextBox.SelectionFont != null) { System.Drawing.
- 如果选择粗体,则文本应以粗体书写
- 如果取消选择粗体,则文本应为常规文本
- 若我选择一些文本并按粗体,它应该是粗体的,其余的文本应该保持规则
- 如果我选择已经加粗的文本并选择加粗,那么它应该成为常规文本
if (richTextBox.SelectionFont != null)
{
System.Drawing.Font currentFont = richTextBox.SelectionFont;
System.Drawing.FontStyle newFontStyle;
if (richTextBox.SelectionFont.Bold == true)
{
newFontStyle = FontStyle.Regular;
}
else
{
newFontStyle = FontStyle.Bold;
}
richTextBox.SelectionFont = new Font(
currentFont.FontFamily,
currentFont.Size,
newFontStyle
);
}
如果您想更改字体,请改用“richTextBox.Font”,这样在选择此项后键入的任何文本都将变为粗体。对于有效的选择,代码应适用。如果未选择任何内容,您将切换richTextBox.Font而不是richTextBox.SelectionFont,就像Rarilou告诉您的那样。