我是c#学习的新手,请问高手,怎样自定义控件啊,具体的思路怎样啊?例如自定义ImageList控件,思路是怎样的啊,涉及到哪些方面的代码啊??在下虚心讨教啦!!

解决方案 »

  1.   

    这个得看类库,不同类库有不同的扩展方法,比如Windows Forms控件和asp.net控件支持的方法就不同。
      

  2.   

    所谓自定义,就是说现有的和你的需要有些不同,自己定义一下,有什么不同看你的需要了。最简单的自定义控件:
    public class MyControl : Control
    {
        public MyControl() { }
    }自定义ImageList,可以这样:
    public class MyImageList : ImageList
    {
        public MyImageList : base() { }    //在这里开始你的代码 :)
    }
      

  3.   

    1 完全自定义控件,你可以继承Control,来自己写,想实现什么功能都可以
    2 继承扩展控件,继承自带控件例如botton,label你所说的imageList,楼上这个思路就是咯,你要注意,什么时候触发重绘。
      

  4.   

    一般都是组件类和用户控件
    或者你继承其他的控件 如Panel之类的在里面添加你需要的变量,委托,方法等! 重写基类的方法
    比如我要将Panel的边框改成椭圆 我就要改写它的重绘事件
    也就是/// <summary>
    /// 窗体重绘
    /// </summary>
    /// <param name="e"></param>
    protected override void OnPaint(PaintEventArgs e)
    {
      base.OnPaint(e);
    }
      

  5.   

    1 完全自定义控件,你可以继承Control,来自己写,想实现什么功能都可以
    2 继承扩展控件,继承自带控件例如botton,label
      

  6.   

    1 完全自定义控件,你可以继承Control,来自己写,想实现什么功能都可以
    2 继承扩展控件,继承自带控件例如botton,label
      

  7.   

    1 完全自定义控件,你可以继承Control,来自己写,想实现什么功能都可以
    2 继承扩展控件,继承自带控件例如botton,label
      

  8.   

    首先就是要继承 UserControl 后,填写自己使用我方法。
    生成项目后,在左侧工具栏就出现了自定义的控件,跟一般控件一样使用啦。