如何在C#中进行自定义控件?

时间:2011-06-19 22:24:31

标签: c# winforms controls

所以我正在开发一个像IDE一样运行的C#程序。 问题是,我是通过富文本框进行的,自定义语法突出显示是超级低效的。

我想知道是否有办法让自定义控件类似于富文本框(甚至基于一个),然后以更简单的方式构建语法高亮显示...

那么,我该如何制作自定义控件呢?如果你是超级好的,那么你就指出了一个很好的教程方向!

4 个答案:

答案 0 :(得分:7)

答案 1 :(得分:2)

很容易从基础控制派生

public class CustomRichTextBox:RichTextBox
{
    public CustomRichTextBox()
    {
        this.Multiline = true;
        this.WordWrap = false;
        this.AcceptsTab = true;
        //...
    }
}

答案 2 :(得分:1)

我建议您查看一些教程,例如

http://www.codeproject.com/KB/miscctrl/cutebutton.aspx

正如NavidRahmani上面所说,您不必从头开始,您可以扩展现有控件或使用已经从不同库创建的控件。

例如telerik控件。

答案 3 :(得分:1)

不,你的工具箱中没有任何控件试图假装是一个好的编辑器控件。 TextBox和RichTextBox有着截然不同的设计目标。这已经被解决了很多次,ScintillaNET project就此而言我已经知道了。