.net WinForm用户控件开发--(3)

  这一节给大家演示一个具有多选功能的下拉列表框,其实就是一个文本框和checkboxlist组合实现的用户控件,换个角度来实现自定义控件。
   
    先来看下效果图吧,我会分几个步骤来具体讲解这个文本框的实现。                                        
      1.界面实现
   
    我们先来看下界面效果怎样实现,然后再讲解具体的功能性实现。
   
    先创建一个用户控件,当然是继承UserControl类,这个界面需要用到以下控件来实现
   
    下拉按钮:是一个button控件
   
    文本框:显示选中的内容,
   
    多选列表框: checkboxlist
   
    全选/取消:是两个LABEL控件
   
    右下角的黑三角:是一个LABEL控件,可实现拉长下拉列表框。
   
    窗体:点击下拉按钮,实际是弹出一个窗体,下拉列表框中的控件都在这个窗体中显示
   
    首先看下下拉按钮的实现
   
    [csharp]
   
    /// <summary>
   
    /// 重写BUTTON
   
    /// </summary>
   
    public class ButtonS : Button
   
    {
   
    public ButtonS()
   
    {
   
    //防止重绘控件出现闪烁
   
    this.SetStyle(ControlStyles.UserPaint, true);
   
    this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
   
    this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
   
    }
   
    ButtonState state;
   
    //当按钮被按下
   
    protected override void OnMouseDown(MouseEventArgs mevent)
   
    {
   
    state = ButtonState.Pushed;
   
    base.OnMouseDown(mevent);
   
    }

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Grow your business fast with

Suku