[英]Remove button border on tab c# winforms
我的表单上有一个应用了平面样式并使用背景图像的按钮,我删除了该按钮的所有边框,但是当我从另一个控件切换到该按钮时,该按钮周围会出现黑色边框。
可以在下图中看到。 左侧是带有黑色边框的按钮,右侧是另一个按钮,但显示了取消按钮的外观。
我没有得到这个边界,如果我设置BoderSize
到0
的FlatAppearance
部分。
进一步的调查表明,只有当按钮是默认按钮时,才会出现该边框。 您可以创建自己的按钮,它永远不会像这样显示边框
public class NoNotifyButton: System.Windows.Forms.Button
{
public override void NotifyDefault(bool value)
{
}
}
注意: NotifyDefault
有意保留为空。
你必须要使用一个新的按钮类IButtonControl
和变化NotifyDefault
为false:
base.NotifyDefault(false);
您可以将按钮属性“ ForeColor”设置为透明
您不必创建派生类。 您可以将ForeColor设置为与父控件BackColor相同。 如下 :
btn1.ForeColor = btn1.Parent.BackColor;
我设法通过将按钮TabStop属性设置为False,然后在按钮单击事件上使用此代码来解决此问题
private void sendBackTab()
{
System.Windows.Forms.SendKeys.SendWait("+{TAB}");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.