基本信息
源码名称:C# 自定义Combox 选择控件(实现了 自定义属性/事件等,适合仪器开发)
源码大小:0.06M
文件格式:.zip
开发语言:C#
更新时间:2016-07-01
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
一个可替代Combox的控件
解决Combox的点击过小功能,开发出一个新的选择控件,适合于仪器开发
using System; using System.Collections.Generic; using System.Collections; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; namespace UUOscilloscope.BaseControls { public partial class ExCombox : Button { public event ClickDoneEventHandler ClickDoneEvent; Font F = new System.Drawing.Font("Arial", 10); [CategoryAttribute("样式设置")] public Font YourFont { get { return F; } set { F = value; } } private int[] Htable = new int[] { 1, 1, 1, 1, 2, 2, 2, 2, 3, 2}; public ClickDoneEventArgs ee=new ClickDoneEventArgs(); [CategoryAttribute("样式设置")] public int[] Hortable { get { return Htable; } set { Htable = value; } } private int[] Vtable = new int[] { 1, 2, 3, 4, 3, 3, 4, 4, 3, 5}; [CategoryAttribute("样式设置")] public int[] Vertable { get { return Vtable; } set { Vtable = value; } } private int HInter = 50; [CategoryAttribute("自长宽与间距设置")] [DefaultValue(50)] public int HorInteral { get { return HInter; } set { HInter = value; } } private int VInter = 40; [DefaultValue(40)] [CategoryAttribute("自长宽与间距设置")] public int VerInterval { get { return VInter; } set { VInter = value; } } private int Inter = 4; [DefaultValue(4)] [CategoryAttribute("自长宽与间距设置")] public int Interval { get { return Inter; } set { Inter = value; } } private int StringItems =0; [DefaultValue(0)] [CategoryAttribute("样式设置")] public int StringItemsSize { get { //return StringItems; return items.Length; } //set { StringItems = value; } } public String[] items = new String[10]; [CategoryAttribute("选项设置")] [ Localizable(true)] public String[] Items { get { return items; } set { items = value; } } private ShowItem Show; private Form form; public ExCombox() { InitializeComponent(); SetStyle(ControlStyles.SupportsTransparentBackColor, true); SetStyle(ControlStyles.ResizeRedraw, true); SetStyle(ControlStyles.OptimizedDoubleBuffer, true); this.Size = new Size(88, 24); this.ResizeRedraw = true; this.BackColor = Color.SlateGray; this.FlatStyle = FlatStyle.Flat; } private void ExCombox_Click(object sender, EventArgs e) { form = new Form(); form.StartPosition = FormStartPosition.Manual; form.FormBorderStyle = FormBorderStyle.None; form.ShowInTaskbar = false; form.MinimumSize = new Size(1, 1); Point ScreenPoint = Control.MousePosition; Show = new ShowItem(StringItemsSize, items, HInter, VInter, Inter, Htable, Vtable, F, this); form.Height = Show.Height; form.Width =Show.Width; form.Top = ScreenPoint.Y - Show.Height / 2; form.Left=ScreenPoint.X - Show.Width / 2; form.Controls.Add(Show); form.ShowDialog(); } public void Show_Click() { Object obj = this; if (ClickDoneEvent!=null) ClickDoneEvent(obj, ee); } } }