C#Checkbox没有关注Tabstop

时间:2016-01-19 23:47:05

标签: c# winforms checkbox tabindex tabstop

我正在制作一个配置编辑器表单,并且遇到了一些问题,我将大量时间投入到用户友好且高效的设计中,因此希望TabIndex能够完美地工作以最大限度地减少鼠标的使用。

我现在的问题是,当我尝试通过控件进行制表时,我注意到CheckBox没有获得焦点,就像用鼠标按下它一样,这意味着我无法通过并改变他们的状态直接来自键盘。

如何通过CheckBoxTabIndex获得TabStop增益焦点,以便我可以按Enter键通过KeyUp事件更改其状态。

下面是我的表单的图片,旁边是TabIndex的图片以及直接从Form.Designer.cs课程中获取的代码。

enter image description here

        // 
        // cbxDefaultPublic
        // 
        this.cbxDefaultPublic.AutoSize = true;
        this.cbxDefaultPublic.Location = new System.Drawing.Point(247, 12);
        this.cbxDefaultPublic.Name = "cbxDefaultPublic";
        this.cbxDefaultPublic.Size = new System.Drawing.Size(15, 14);
        this.cbxDefaultPublic.TabIndex = 1;
        this.cbxDefaultPublic.TabStop = true;
        this.cbxDefaultPublic.UseVisualStyleBackColor = true;

请注意,我很难解释这个原因有点复杂,如果我有些不对劲的话,我也不知道该如何解释它。

1 个答案:

答案 0 :(得分:0)

在人们评论我的问题的帮助下,我能够找到正确的搜索方式和搜索内容。 感谢Grant Winney,LarsTech和JohnnyBoy向我解释"false"如何工作以及我需要看什么。

我发现CheckBox没有公开突出显示功能,所以我必须要有创意 我所做的是我创建了一个自定义CheckBox并且很好..可能只会显示代码:P

CheckBox

因此,当它获得或失去焦点时,我会调用MouseEnter和Leave事件,这将使其更改为突出显示的状态。