如果复选框上没有应用文本,Winforms复选框焦点问题

Sam*_*eep 7 checkbox focus winforms

我在Winforms上有一个多个复选框,没有所有复选框的文本属性,所以问题是当我将鼠标悬停在复选框时它突出显示但是当我使用tab键转到复选框时它永远不会突出显示..

如果有人有类似的问题,已经解决了它请帮助..

AKo*_*ran 7

问题是当复选框获得焦点时,它仅突出显示控件的文本部分,在您的情况下为空.你有几个选择:

1)对于所有"空白"文本框,将text属性设置为空格.当您选择控件时,这将创建一个小的突出显示部分.

2)编程复选框的OnEnter和OnLeave事件,并在整个控件周围绘制/绘制一个正方形.

3)如果您希望默认的MouseEnter行为在复选框本身上创建黄色突出显示,请创建您自己的复选框控件,如下所示:

public class MyCB : CheckBox
{
    protected override void OnEnter(EventArgs e)
    {
      base.OnEnter(e);
      base.OnMouseEnter(e);
    }

    protected override void OnLeave(EventArgs e)
    {
      base.OnLeave(e);
      base.OnMouseLeave(e);
    }
}
Run Code Online (Sandbox Code Playgroud)