c# - 如何在 C# Visual Studio 中删除 CheckBox 的焦点边框?

标签 c# winforms checkbox focus border

尝试了大多数属性,但未能完全禁用 visual studio 中复选框的焦点。有谁知道怎么做吗?

我正在使用 System.Windows.Forms.CheckBox 对象。我使用图像作为背景,当 CheckBox 处于聚焦状态时绘制边框,这使得背景图像看起来很糟糕。所以我想摆脱它...

编辑:添加图片以阐明此问题的意图...

enter image description here

用户可以轻按“TAB”并单击对象以查看它显示为已获得焦点。 这对我来说是个问题,因为它让 GUI 看起来很糟糕。

最佳答案

负责绘制的 CheckBox 控件的代码非常精细,与 Button 和 RadioButtion 共享,支持多种样式。它不能被覆盖,涉及的类和方法都是内部的

但幸运的是,您只想弄乱焦点矩形。您所要做的就是说服控件它不应该显示它。这非常简单,向您的项目添加一个新类并粘贴如下所示的代码。编译。将新控件从工具箱顶部拖放。

using System.Windows.Forms;

class MyCheckBox : CheckBox {
    protected override bool ShowFocusCues {
        get { return false; }
    }
}

关于c# - 如何在 C# Visual Studio 中删除 CheckBox 的焦点边框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27721858/

相关文章:

javascript - 在 getElementsByTagName 中只选择 Checkbox 输入,排除 Textbox 输入

css - WordPress 联系表 7 : display a dropdown menu after a checkbox select

c# - 从字符串中获取前 6 个不同的字符

c# - 使动态创建的链接标签在 Winforms 中可点击

c# - await SignInManager.PasswordSignInAsync() 总是导致我的 ASP.NET MVC 项目失败

c# - 在 C# 中从 PictureBox 中删除图像

vb.net - 如何要求 CheckedListBox 至少选择一项

javascript - 检查子项时自动检查父项

c# - 如何对齐两个标签和两个文本框而没有水平间隙?

c# - 有没有办法在xml中使用条件编译符号