我正在从事的项目需要使用多种形式的几个按钮,而不是像下面希望的那样将代码设置为全局代码。
这只是项目的一部分,所有代码要做的就是在用户将鼠标悬停在按钮上时放大按钮图片。
我尝试查看类,标签和属性。我知道可以使类跨多种形式使用,但是我无法确定它们是否可以用于事件。
private void btnEnter_MouseEnter(object sender, EventArgs e)
{
Button btn = (Button)sender;
btn.Size = new Size(299, 102);
}
private void btnLeave_MouseLeave(object sender, EventArgs e)
{
Button btn = (Button)sender;
btn.Size = new Size(289, 92);
}
答案 0 :(得分:1)
您可以创建一个继承的按钮。添加一个新的类,然后确保将: Button
放在类名之后。
using System.Drawing;
using System.Windows.Forms;
namespace InheritedButton
{
public class ExpandButton : Button
{
public Size EnterSize { get; set; }
private Size _LeaveSize;
public Size LeaveSize
{
get
{
return (_LeaveSize);
}
set
{
_LeaveSize = value;
this.Size = LeaveSize;
}
}
public ExpandButton() : base()
{
}
protected override void OnMouseEnter(EventArgs e)
{
this.Size = EnterSize;
base.OnMouseEnter(e);
}
protected override void OnMouseLeave(EventArgs e)
{
this.Size = LeaveSize;
base.OnMouseLeave(e);
}
}
}
构建您的项目,新按钮将出现在工具箱中。将其放到窗体/控件上,并确保设置EnterSize和LeaveSize。 EnterSize确定鼠标悬停时按钮的大小,LeaveSize设置初始大小并悬停时设置按钮的大小。您无需设置Size属性,只需设置LeaveSize。
每次您要使用扩展/收缩按钮时,只需使用继承的按钮即可。