首页 > 代码库 > 菜鸟互啄:WINFORM如何实现无聚焦框的Button按钮

菜鸟互啄:WINFORM如何实现无聚焦框的Button按钮

当我们将一个button按钮设置如下属性时,总有一个聚焦框来困扰着我们

button1.FlatStyle = FlatStyle.Flat;

 

我们想要的效果是这样的:

 技术分享

 

但当使用了Tab切换焦点时 发现按钮获取焦点后 成了这个样子

 

 技术分享

 

这个黑框是什么鬼啊 现在就讲一下如何去掉这个聚焦框

 

方法一:

   肯定有人想得到用label啊,当然label是可以,但它毕竟不是按钮,有些效果还得自己写….

发法二:

1.新建一个自定义控件

 技术分享

 

 

2.代码

public partial class BtnNoBorder : Button

{

/// <summary>

/// 构造

/// </summary>

public BtnNoBorder()

{

   InitializeComponent();

}

 

/// <summary>

/// 重绘

/// </summary>

/// <param name="pe"></param>

protected override void OnPaint(PaintEventArgs pe)

{

     base.OnPaint(pe);

}

 

/// <summary>

/// 取消聚焦框

/// </summary>

protected override bool ShowFocusCues

{

  get

    {

       return false;

    }

}

}

  

 

这样就搞定了,用的时候从工具箱拖这个button就可以了

具体如何把这个控件加到工具箱就不介绍了

Bye

 

菜鸟互啄:WINFORM如何实现无聚焦框的Button按钮