フォームロード時のフォーカスセット
通常、コントロールにフォーカスを設定する場合はElementControlクラスのFocusメソッドを使用します。
[C#] コントロールにフォーカスを設定する(Focus)フォーカスのセット
コントロールにフォーカスを設定するには、ElementControlクラスのFocusメソッドを設定します。
...
しかし、フォームロード時においては、Focusメソッドを実行しても、コントロールのタブ順序が優先されてしまい、思ったようにカーソルを設定することができません。
そこで使用するのが、以下の記事でもご紹介したContainerControlクラスのActiveControlプロパティです。
[C#] アクティブなコントロールを取得する(ActiveControl)フォーカスのあるコントロールを調べる
現在アクティブなコントロールを取得するには、ContainerControlクラスのActive...
Form.ActiveControl = コントロール名
それでは、フォームロード時にtextBox2というテキストボックスにフォーカスを設定するサンプルを見てみましょう。
1 2 3 4 |
private void Form1_Load(object sender, EventArgs e) { this.ActiveControl = this.textBox2; } |
上記を実行することで、自身のフォーム上に存在するtextBox2にロード時でもフォーカスが当たるようになります。
以上が、フォームのロード時にコントロールにフォーカスを設定する「ActiveControl」プロパティの活用方法です。
ぜひ参考にしてみてください。