vs 自定义控件如何编写事件

 我来答
anji728
2012-12-06 · 超过26用户采纳过TA的回答
知道答主
回答量:55
采纳率:0%
帮助的人:67.4万
展开全部
好问题!当时我也是在网上找了很久,然后才写出来的。
我就讲下大体说下吧。
1.自定义控件事件最主要的是参数的传递,而参数是写在事件里的,所以需要定义一个事件

public class EventMoveArgs : EventArgs
{
public EventMoveArgs(xx,xx)
{
.....

}
}//主要用来传递参数,用构造函数
2.声明委托和事件
public delegate void PieceMoveEventHandler(object sender, EventMoveArgs e);//参数名与事件类名
public event PieceMoveEventHandler PieceMoveEvent_Click;//注意名称一致
3.虚方法
protected virtual void OnPieceMove(EventMoveArgs e)
{
if (this.PieceMoveEvent_Click != null)
PieceMoveEvent_Click(this, e);
}
4.自定义控件内部的基本控件的事件
private void uPB_Click(object sender, EventArgs e)//比如Button1_Click
{
OnPieceMove(new EventMoveArgs(0, -1));
}
几本上足够了,你就照着这个该下函数名改就可以了。

最后添加好后在自定义控件事件列表中会多出个OnPieceMove,即你需要的自定义控件事件。

参考的网址可以看下。

记得采纳o(∩_∩)o ~

参考资料: http://www.csharpwin.com/csharpspace/7891r3841.shtml

变成新手
2012-12-07 · 超过21用户采纳过TA的回答
知道答主
回答量:83
采纳率:0%
帮助的人:50.7万
展开全部
问这种问题其实要跟你具体讲解的话,最基本的就是委托和事件,关于事件,有涉及到微软的FCL对事件是怎样处理的; 这还是最基本的,自定义控件,你要对微软的基础类库比较熟悉,不然你的控件要实现什么效果你都不知道用什么类库,如果只是单纯的用继承的方式扩展微软的控件,那么还不需要这么研究;还有自定义控件,你要能做成微软那样的那就蛮好,这里面就涉及到高级概念,比如控件的设计时行为,运行时行为/ ,这些想要了解需要对FCL很了解/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
26779260
2012-12-06 · TA获得超过229个赞
知道答主
回答量:124
采纳率:0%
帮助的人:143万
展开全部
这种概念很广的问题还是不在这里问吧,你最好是具体问题具体的问
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式