C#的文本格式化方法

时间:2014-12-03 09:19:14

标签: c# .net winforms

所有。我正在C#.NET上编写一个程序。我的表单中有一个richtextBox(Windows窗体)。我打开一个文本文件并将文本放在richtextBox中。我需要使用FontDialog格式化选定的文本。但是它改变了所有文本,而没有被选中。可以应用什么方法,FontDialog只更改了所选文本?

我的代码:

 if (fontDialog1.ShowDialog() != DialogResult.Cancel)
        {
            if (richTextBox1.SelectedText.Length > 0)
            {
                richTextBox1.Font = fontDialog1.Font;
                richTextBox1.ForeColor = fontDialog1.Color;
            }

感谢。

3 个答案:

答案 0 :(得分:3)

您需要使用SelectionFont& richtextBox的SelectionColor属性:因为您使用的属性适用于控件的全部内容

if (fontDialog1.ShowDialog() != DialogResult.Cancel)
        {
            if (richTextBox1.SelectedText.Length > 0)
            {
                richTextBox1.SelectionFont = fontDialog1.Font;
                richTextBox1.SelectionColor = fontDialog1.Color;
            }

答案 1 :(得分:0)

documentation for SelectedText提供了一些很好的帮助

richTextBox1.SelectionFont = fontDialog1.Font
richTextBox1.SelectionColor = fontDialog1.Color;

答案 2 :(得分:0)

用户RichTextBox.SelectionFont属性

if (fontDialog1.ShowDialog() != DialogResult.Cancel)
    {
        if (richTextBox1.SelectedText.Length > 0)
        {
            richTextBox1.SelectionFont = fontDialog1.Font;
            richTextBox1.SelectionColor = fontDialog1.Color;
        }

查看http://msdn.microsoft.com/en-us/library/system.windows.forms.richtextbox_members%28v=vs.85%29.aspx以查看RichTextBox所有成员的列表