Я создаю форму редактора конфигураций и немного поражен, я много времени уделяю удобному и эффективному дизайну и поэтому хочу, чтобы TabIndex
отлично работал, чтобы свести к минимуму использование мыши ,C# Checkbox не фокусируется на Tabstop
Моя проблема теперь, когда я пытаюсь выполнить вкладку элементов управления, я заметил, что CheckBox
не набирал фокус, как если бы вы нажимали его мышью, это означает, что я не мог выполнить переход и изменить свое состояние прямо с клавиатуры.
Как сделать фокус CheckBox
усиления с помощью TabIndex
и TabStop
, так что я могу просто нажать Enter, чтобы изменить свое состояние с помощью события KeyUp.
Ниже приведено изображение моей формы, а рядом с ним изображение TabIndex
, а также код, взятый непосредственно из класса Form.Designer.cs
.
//
// 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;
Пожалуйста, обратите внимание, что у меня было трудное время, объясняя это привести его немного сложным и не знаю, как объяснить это так обнажить над со мной, если я получил несколько вещей неправильно.
Нажмите 'SpaceBar', а не' Enter'. Я бы ожидал 'Enter', чтобы закрыть форму, а не переключать' CheckBox'. –
Элемент управления CheckBox предпочитает иметь текст, чтобы показать фокус. – LarsTech
@GrantWinney Хорошо, теперь я действительно смущен, в основном вызывают работу 'SpaceBar', но меня смущает то, что визуальные эффекты для' CheckBox' не меняются, когда они находятся в фокусе, например, как кнопки управления (fx Buttons) слегка поворачиваются синий, когда они получают фокус. –