から継承しLabel
、にControlStyle.Selectable
設定したカスタム コントロールがありtrue
ます。
コントロールは、ユーザーがクリックするとフォーカスを受け取りますが、ユーザーが別のコントロールからタブ移動するとフォーカスを受け取りません。
そのタイプのコントロールだけで埋められたフォームがある場合でも、タブでフォーカスを受け取るものはありません。
Label
タブで受信をフォーカスするにはどうすればよいですか?
から継承しLabel
、にControlStyle.Selectable
設定したカスタム コントロールがありtrue
ます。
コントロールは、ユーザーがクリックするとフォーカスを受け取りますが、ユーザーが別のコントロールからタブ移動するとフォーカスを受け取りません。
そのタイプのコントロールだけで埋められたフォームがある場合でも、タブでフォーカスを受け取るものはありません。
Label
タブで受信をフォーカスするにはどうすればよいですか?
それを にして、 を に設定し、を に設定し、に設定TextBox
するだけの方が簡単かもしれません。これにより、ラベルの外観が得られますが、フォーカスのためにタブで移動することができます。BorderStyle
None
BackColor
Control
ReadOnly
True
更新SetStyle(ControlStyles.Selectable, true);
との組み合わせのように見えTabStop = true;
ますが、Tab キーを使用してラベルにフォーカスを当てることができます。以下は、それが機能していることを示す簡単な例です。
public class SelectableLabel : Label
{
public SelectableLabel()
{
SetStyle(ControlStyles.Selectable, true);
TabStop = true;
}
protected override void OnEnter(EventArgs e)
{
BackColor = Color.Red;
base.OnEnter(e);
}
protected override void OnLeave(EventArgs e)
{
BackColor = SystemColors.Control;
base.OnLeave(e);
}
protected override void OnMouseDown(MouseEventArgs e)
{
this.Focus();
base.OnMouseDown(e);
}
}