基本信息
源码名称:C# 自定义Combox 选择控件(实现了 自定义属性/事件等,适合仪器开发)
源码大小:0.06M
文件格式:.zip
开发语言:C#
更新时间:2016-07-01
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 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);
}
}
}