所以我用Winforms在C#中构建了一个应用程序,我的应用程序使用了一些不同的按钮。我希望在被单击的按钮上有一个突出显示,以显示您所在的“标签”。
我试着做了以下几点:
// BUTTONS //
private void dashboard_btn_Click(object sender, EventArgs e)
{
// Load Form
OpenChildForm(new FormDashboard());
dashboard_btn.FlatAppearance.BorderColor = Color.Red;
dashboard_btn.FlatAppearance.BorderSize = 1;
}
然而,这当然不能很好地工作,因为它添加了一个边界周围的按钮,但当我单击另一个按钮的边界也停留在周围的前一个按钮。
如何实现一个功能,在单击的按钮周围添加边框,但在单击另一个按钮后边框消失?
感谢您的反馈!
编辑:
我已经实现了Jimi的建议,并使用Leave事件将按钮周围的边框更改回0。但是,我不确定如何以全局方式实现这一点,因此我的所有按钮都订阅了此事件。
我的代码现在如下所示;
第一次
1条答案
按热度按时间cngwdvgl1#
这可能有助于
RadioButton
样式的功能,因为单击同一容器中的不同单选按钮将取消选中其他单选按钮。您可以创建一个简单的自定义RadioButtonEx
类,其中Appearance
属性设置为Button
,然后在Checked
属性更改时更改边框样式。在此范例中,Click
事件已变更为static
,因此按一下任何按钮都会将事件导向通用onAnyClick
方法。