c# - 如何在 C# 中设置/更改/删除按钮上的焦点样式?

标签 c# winforms button focus

我有几个按钮,我修改了它们的外观。我将它们设置为带有背景和自定义边框的平面按钮,因此它们看起来很漂亮,不再像普通按钮(实际上,它们现在看起来像 Of​​fice 2003 按钮 ;-)。这些按钮有一个像素的边框。

然而,当按钮被选中时(通过单击或键盘操作(如按 tab 键)获得焦点)按钮突然在其周围出现相同颜色的额外边框,因此使其成为两个像素的边框。此外,当我禁用一像素边框时,按钮不会在焦点上获得一像素边框。

在网上,这个问题的问法很像“如何禁用按钮上的焦点”,但这不是我想要的:焦点应该仍然存在,只是不显示 现在的方式。

有什么建议吗? :-)

最佳答案

这就是您想要的效果吗?

public class NoFocusCueButton : Button
{
    protected override bool ShowFocusCues
    {
        get
        {
            return false;
        }
    }
}

您可以像使用常规按钮一样使用此自定义按钮类,但它不会为您提供额外的焦点矩形。

关于c# - 如何在 C# 中设置/更改/删除按钮上的焦点样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/148729/

相关文章:

Jquery:不同的点击和输入处理程序

c# - 如何在 WPF 多选项卡 UI 中使用模板?

C# - 从字节创建 BMP

c# - Windows 7 Phone - 延迟屏幕导航

c# - 我们如何阻止鼠标点击和按键被传输到网络浏览器中上传的文档?

.net - 使用模式按名称查找 Windows 窗体控件

c# - 有条件地改变目标框架版本

c# - 我是否使用 Paint 事件在运行时定位控件?

android - 使用 LayoutParams 在按钮上设置 layout_gravity 时出现问题

c# - WPF 中的圆边 3D 样式按钮