c#多选下拉框(ComboBox)

代码如下

  1 using System;
  2 using System.Collections.Generic;
  3 using System.ComponentModel;
  4 using System.Drawing;
  5 using System.Data;
  6 using System.Linq;
  7 using System.Text;
  8 using System.Windows.Forms;
  9 using System.Collections;
 10 using System.Reflection;
 11 using Newtonsoft.Json.Linq;
 12 
 13 namespace ControlsAA
 14 {
 15     public class ComboBoxEx : ComboBox
 16     {
 17         TreeView lst = new TreeView();
 18       
 19         public ComboBoxEx()
 20         {
 21             this.DrawMode = DrawMode.OwnerDrawFixed;//只有设置这个属性为OwnerDrawFixed才可能让重画起作用
 22             lst.KeyUp += new KeyEventHandler(lst_KeyUp);
 23             lst.MouseUp += new MouseEventHandler(lst_MouseUp);
 24             // lst.KeyDown += new KeyEventHandler(lst_KeyDown);
 25             lst.Leave += new EventHandler(lst_Leave);
 26             lst.CheckBoxes = true;
 27             lst.ShowLines = false;
 28             lst.ShowPlusMinus = false;
 29             lst.ShowRootLines = false;
 30             this.DropDownHeight = 1;
 31         }
 32 
 33         void lst_Leave(object sender, EventArgs e)
 34         {
 35             lst.Hide();
 36         }
 37         #region Property
 38      
 39         [Description("选定项的值"), Category("Data")]
 40         public List<TreeNode> SelectedItems
 41         {
 42             get
 43             {
 44                 List<TreeNode> lsttn = new List<TreeNode>();
 45                 foreach (TreeNode tn in lst.Nodes)
 46                 {
 47                     if (tn.Checked)
 48                     {
 49                         lsttn.Add(tn);
 50                     }
 51                 }
 52                 return lsttn;
 53             }
 54         }
 55 
 56         /// <summary>
 57         /// 数据源
 58         /// </summary>
 59         [Description("数据源"), Category("Data")]
 60         public object DataSource
 61         {
 62             get;
 63             set;
 64         }
 65         /// <summary>
 66         /// 显示字段
 67         /// </summary>
 68         [Description("显示字段"), Category("Data")]
 69         public string DisplayFiled
 70         {
 71             get;
 72             set;
 73         }
 74         /// <summary>
 75         /// 值字段
 76         /// </summary>
 77         [Description("
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值