public YourControl{
private Button buttonCtrl;
public event EventHandle Click;
public YourControl() {
buttonCtrl = new Button();
buttonCtrl.Click += YourClick;
...
}
private void YourClick(object sender, EventArgs e) {
if (Click != null)
Click(this, new EventArgs());
}
}
private Button buttonCtrl;
public event EventHandle Click;
public YourControl() {
buttonCtrl = new Button();
buttonCtrl.Click += YourClick;
...
}
private void YourClick(object sender, EventArgs e) {
if (Click != null)
Click(this, new EventArgs());
}
}
解决方案 »
- toolStrip控件,如何命名呀,我找不到“命名约定”的规则?
- 点击一个按钮,弹出DateTimePicker,怎么做到呢?
- directshow 抓取视频第一帧
- 我的一个多线程中调用某个方法就会出错,但在线程外是正常的的
- 怎么实现鼠标左键点击窗体特定部分窗体拖动时窗体移动
- [HELP]哪里有最新版的QQ农场外挂源码下载?
- C#的水晶报表如何使用,请高手指点?
- c#调用SendMessage或者PostMessage,窗口最小化问题
- 如何实现WEBFORM中的LABEL的单击,双击,N击事件?
- 怎样在datagrid控件里对某字段,根据不同条件显示出不同图标???
- 如何引用自己写的控件呢?谢了
- 问个极菜的问题:关于C#程序的编译,还是不吝赐教
public delegate void Myevent();
public event OnMouseDown Myevent;
然后在要产生事件的地方,如button_Click()直接使用就可产生事件
private void button_Click(object sender, System.EventArgs e)
{
OnMouseDown();
}
呵呵,简单吧,我的程序就是这么作的,绝对没问题。
在public event EventHandler Click;这行编译错误:要求关键字new,但是加上了还是不对
public class ButtonTextBox : System.Windows.Forms.TextBox
{
private System.Windows.Forms.Button btnSelect;
public event EventHandler Click;
public ButtonTextBox()
{
InitializeComponent();
}
#region Windows Form Designer generated code
private void InitializeComponent()
{
this.btnSelect = new System.Windows.Forms.Button();
this.btnSelect.Click += new System.EventHandler(YourClick);
// tbxDept
//
this.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.Location = new System.Drawing.Point(72, 96);
this.Name = "tbxDept";
this.TabIndex = 0;
this.Text = "";
this.Click +=new EventHandler(this.Click);
//
// btnSelect
//
this.btnSelect.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
this.btnSelect.Font = new System.Drawing.Font("????¨¬??", 6F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((System.Byte)(134)));
this.btnSelect.Location = new System.Drawing.Point(this.Location.X+80,this.Location.Y);
this.btnSelect.Name = "btnSelect";
this.btnSelect.Size = new System.Drawing.Size(25, 21);
this.btnSelect.TabIndex = 1;
this.btnSelect.Text = "...";
this.btnSelect.Visible = false;
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.btnSelect});
}
#endregion
private void YourClick(object sender, EventArgs e)
{
if (Click != null)
Click(this, new EventArgs());
}
private void this_Click(object sender, System.EventArgs e)
{ this.btnSelect.Visible = true;
this.Size = new System.Drawing.Size(88, 21);
}
}
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Windows.Forms;public class SelectBox : System.Windows.Forms.UserControl
{
private System.Windows.Forms.TextBox tbxSelect;
private System.Windows.Forms.Button btnSelect;
public event EventHandler buttonClick;
private System.ComponentModel.Container components = null;
public SelectBox()
{
InitializeComponent();
} protected override void Dispose( bool disposing )
{
if( disposing )
{
if( components != null )
components.Dispose();
}
base.Dispose( disposing );
} #region Component Designer generated code
private void InitializeComponent()
{
this.tbxSelect = new System.Windows.Forms.TextBox();
this.btnSelect = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// tbxSelect
//
this.tbxSelect.Name = "tbxSelect";
this.tbxSelect.Size = new System.Drawing.Size(100, 21);
this.tbxSelect.TabIndex = 0;
this.tbxSelect.Text = "";
//
// btnSelect
//
this.btnSelect.Location = new System.Drawing.Point(this.tbxSelect.Location.X+80,this.tbxSelect.Location.Y);
this.btnSelect.Name = "btnSelect";
this.btnSelect.Size = new System.Drawing.Size(32, 21);
this.btnSelect.Visible = true;
this.btnSelect.TabIndex = 1;
this.btnSelect.Text = "<<";
//
// SelectBox
//
this.Controls.AddRange(new System.Windows.Forms.Control[] this.btnSelect,
this.tbxSelect});
this.Name = "SelectBox";
this.Size = new System.Drawing.Size(104, 24);
this.ResumeLayout(false);
}
#endregion private void tbxSelect_Click(object sender, System.EventArgs e)
{
this.Size = new System.Drawing.Size(88, 21);
this.btnSelect.Visible = true;
} private void YourClick(object sender, EventArgs e)
{
if (buttonClick != null)
buttonClick(this, new EventArgs());
}}
调用时:private void selectBox1_buttonClick(object sender, System.EventArgs e)
{
tempForm=new Form();
}
InitializeComponent()
中加一段代码:this.btnSelect.Click += new EventHandler(YourClick);