C#添加自定义richtextbox

本文关键字:richtextbox 自定义 添加 | 更新日期: 2023-09-27 17:58:13

我在这里问了一个问题

我不确定如何添加用户给我的类——我刚刚创建了一个新的类文件,然后粘贴到类中,我不知道如何将其应用到richtextbox?

以下是如何找到我的richtextbox。。。我在文本编辑器中为打开的每个选项卡页都有一个丰富的文本框我在newtab void 上创建了一个新的文本框

public RichTextBox GetRichTextBox()
    {
        RichTextBox rtb = null;
        TabPage starting = tabControl1.SelectedTab;
        if (starting != null)
        {
            rtb = starting.Controls[0] as RichTextBox;
        }
        rtb.TextChanged += new EventHandler(txtBox_TextChanged);
        rtb.MouseClick += new MouseEventHandler(rtbh_MouseClick);
        //rtb.Select(rtb.Text.Length, 0);
        rtb.Font = new Font(rtb.Font.FontFamily, 12);

        rtb.Select(rtb.Text.Length, 0);
        return rtb;
    }

C#添加自定义richtextbox

用户给您的类继承自RichTextBox,因此在向文本编辑器添加文本框时,请添加此自定义类。对于查找文本框的功能,请使用自定义控件。因此,将上述功能更改为:

public HighlightableRTB GetRichTextBox()
{
    HighlightableRTB rtb = null;
    TabPage starting = tabControl1.SelectedTab;
    if (starting != null)
    {
        rtb = starting.Controls[0] as HighlightableRTB;
    }
    if (rtb != null)
    {
        rtb.TextChanged += new EventHandler(txtBox_TextChanged);
        rtb.MouseClick += new MouseEventHandler(rtbh_MouseClick);
        //rtb.Select(rtb.Text.Length, 0);
        rtb.Font = new Font(rtb.Font.FontFamily, 12);
        rtb.Select(rtb.Text.Length, 0);
    }
    return rtb;
}

实际添加的自定义文本框可能看起来像这样:

TabPage tabPage = new TabPage("Test");
tabPage.Name = "Test";
tabControl1.TabPages.Add(tabPage);
HighlightableRTB customTextBox = new HighlightableRTB();
tabControl1.TabPages["Test"].Controls.Add(customTextBox);