【发布时间】:2016-03-31 11:16:41
【问题描述】:
我正在创建一个文本编辑器,当我通过字体对话框增加字体大小时,富文本框的所有字体大小都会增加,而不仅仅是选定的文本。
如何更改文本框中仅选定文本的任何属性?
public partial class Form1 : Form
{
private void change()
{
if (click == true)
{
FontDialog fd = new FontDialog();
fd.ShowColor = true;//Show color option in font dialog
if (fd.ShowDialog() == DialogResult.OK)
{
//----------------------> How to affect only selected contents
richtextbox.ForeColor = fd.Color;
richtextbox.Font = fd.Font;
}//end if
}
}//end method change
public Form1()
{
InitializeComponent();
}
bool click = false;
private void button1_Click(object sender, EventArgs e)
{
click = true;
change();
}
}
【问题讨论】:
-
您不能在标准文本框中使用混合样式,您可能希望查看 RichTextBox 但取决于您的需要。例如您是否需要保存数据,您需要存储为 RTF 以保留可能无法与系统中的其他功能一起使用的格式
-
使用richtextbox 后出现同样的问题。我想只增加选定文本的大小,但是当我增加它时,richtextbox 的整个文本的大小都会增加。
-
那么你可能使用了错误的函数......也许你应该把你的代码。我认为这类似于您在 RichTextBox 中想要的
SelectionFont。 编辑:实际上不确定这是正确的属性,但check this out