如何更改按钮的边框颜色?
本文关键字:颜色 边框 何更改 按钮 | 更新日期: 2023-09-27 18:15:27
这是我的代码:
buttonName = "btn" + y.ToString() + x.ToString();
Control btn = this.Controls.Find(buttonName, true)[0] as Control;
btn.BackColor = System.Drawing.Color.Blue;
但是,我没有看到边框颜色改变属性,或类似的
我使用这段代码是因为我的表单上有很多按钮,这些按钮的任何属性都可以改变,所以我没有单独调用它们,而是编写了可以处理它们的代码。
是否有一个类似于上面的代码,这将允许我改变按钮的边框颜色?
我不知道你在做什么类型的应用程序,但是在winforms中没有直接在它上面的按钮的边界属性,即使在设计器中也是如此。您可以使用扁平样式的按钮。你的类型必须是button。
你可以这样做:
buttonName = "btn" + y.ToString() + x.ToString();
Button btn = this.Controls.Find(buttonName, true)[0] as Button;
btn.BackColor = System.Drawing.Color.Blue;
btn.FlatStyle = FlatStyle.Flat
btn.FlatAppearance.BorderColor = Color.Red;
btn.FlatAppearance.BorderSize = 1;
不幸的是,这只适用于FlatStyle的按钮。
可以使用flatAppearance。BorderColor
btn.FlatAppearance.BorderColor = System.Drawing.Color.Blue;
我知道这个问题在很久以前(2011年)就被问到了,但我认为我的评论对某些人来说是有用的:不使用FlatStyle,你可以使用ControlPaint。如果你想改变按钮的边框颜色
private void btnName_Paint(object sender, PaintEventArgs e)
{
Button btn = (Button)sender;
ControlPaint.DrawBorder(e.Graphics, btn.ClientRectangle,
Color.LightGreen, 1, ButtonBorderStyle.Solid,
Color.LightGreen, 1, ButtonBorderStyle.Solid,
Color.LightGreen, 1, ButtonBorderStyle.Solid,
Color.LightGreen, 1, ButtonBorderStyle.Solid
);
}
根据Microsoft (link)
适用。净框架
4.7.2 4.7.1, 4.7, 4.6.2, 4.6.1, 4.6, 4.5.2, 4.5.1, 4.5, 4.0, 3.5, 3.0, 2.0, 1.1
根据你的框架,有一个名为BorderColor的新属性
http://msdn.microsoft.com/en-us/library/system.windows.forms.flatbuttonappearance.bordercolor.aspx你检查过了吗?
还有一个类似的例子
更改Windows窗体控件的边框颜色
您需要将Control转换为Button(或任何类型)。控件是基类,并且不包含修改边框颜色的属性。这是windows应用程序吗?