我想自制一个button按钮,就新建了一个用户控件,在用户控件界面上我放了个button上去,然后把用户控件的大小调成和button大小一样,也就是重合了,并把button的Dock设置为Fill。制作好后,我拖了一个自制的button在界面上,并给用户控件的Click加入了点击后要执行的命令。但是我发现点击之后没有反应,设置断点也跳不进去,我想是不是应该给用户控件上面的button添加点击事件,求高人解答~
解决方案 »
- 正则提取的中文是乱码
- Win7+VS2010开发的ActiveX插件,在XP下无法正常显示
- C# HttpWebRequest如何使用Post提交网页?
- .net winnform 应用程序在vista系统下运行的情况
- C# 写通用方法的问题!急急急~~
- dataGridView的首列(控制列)属性问题
- 关于webBrowser控件弹出新窗口的
- 急:请问如何在动态增加的table控件中动态增加radiobuttonlist控件
- "未处理的“System.Data.SqlClient.SqlException”类型的异常出现在 system.data.dll 中"
- WPF 如何模板化?
- C# Action 定义委托有什么优点?
- C# 数据内存共享的问题!
点击事件后Label有没有变化,不就知道了吗?
{
//可能这个方法在mycontrol.designer.cs里面
public MyControl()
{
...
button1.Click += new EventHandler(button1_Click);
}
private EventHandler buttonClick;
public event EventHandler ButtonClick
{
add { buttonClick += value; } remove { buttonClick -= value; }
} private void button1_Click(object sender, EventArgs e)
{
if (ButtonClick != null) ButtonClick(this, new EventArgs());
}
}
class MyButton : Button { }
编译,即可。不过这个代码产生的MyButton和Button一模一样。
public partial class MyButton : UserControl
{
//new 关键字隐藏继承的成员
public new event EventHandler Click;
public MyButton()
{
InitializeComponent(); button1.Click += new EventHandler(button1_Click);
} void button1_Click(object sender, EventArgs e)
{
if(Click!=null)
Click(this,e);
}
}这样你就放心和以往那样调用了 不需要改调用方的代码
class MyButton : Button { }
编译,即可。不过这个代码产生的MyButton和Button一模一样。
我想扩展的功能是button上的字体随button的大小而改变,如果在这个类里加个size_changed的事件,应该怎么写?
class MyButton : Button { }
编译,即可。不过这个代码产生的MyButton和Button一模一样。
版主,如果我要在MyButton这个类里写一个当button的size改变时button上的字体大小根据一定的规则进行改变,能否给下比较核心的代码?谢谢~
{
protected void override OnResize(EventArgs e)
{
Font = ...;
}
}