我有一个Windows表格,我想做一个现代化的设计。我只是在按钮的造型上遇到了问题,你能帮帮我吗?
我想移除或隐藏按钮被点击时的背景色,我用下面的代码移除了鼠标在组件上的背景色。
FlatAppearance.MouseOverBackColor = System.Drawing.Color.Transparent;
现在我需要删除或隐藏这个(灰色背景)。表格图片
我怎么做这个?
谢谢你!我有一个Windows表格,我想做一个现代设计。
我经过多次尝试得到了解决方法。只要把FlatAppearance.MouseOverBackColor和FlatAppearance.MouseDownBackColor改成Form或它所连接的项目的背景色就可以了。
例子: 你有一个带面板的表单,面板的颜色是红色的,所以把属性设置为红色,或者直接把 "Color.Transparent"
buttonName.FlatAppearance.MouseOverBackColor = Color.FromArg(255, 0, 0) // red;
buttonName.FlatAppearance.MouseDownBackColor = Color.Transparent; // same result
所以,如果你有一个扩展Button对象的类,只需要做这样的代码。
public class MyButton : Button
{
public MyButton()
{
FlatAppearance.MouseOverBackColor = Color.Transparent; // or Color.[Preference]
FlatAppearance.MouseDownBackColor = Color.Transparent; // or Color.[Preference]
}
// Rest of your code...
}
否则,做一个foreach,如下所示
foreach (var button in this.Controls.OfType<Button>())
{
button.FlatAppearance.MouseOverBackColor = Color.Transparent; // or Color.[Preference]
button.FlatAppearance.MouseDownBackColor = Color.Transparent; // or Color.[Preference]
}
上面的代码是给大家举例,让大家能够建立自己的逻辑,如果有疑问,我可以帮助你。