次の方法で共有


Windows フォームのタブ オーダーを設定する方法 (Windows フォーム .NET)

タブ オーダーは、ユーザーが Tab キーを押すことによって、コントロールのフォーカスが別のコントロールに移動する順序です。 各フォームには、独自のタブ オーダーがあります。 既定では、タブ オーダーは、コントロールを作成した順序と同じです。 タブ オーダーの番号は 0 から始まり、順に増加し、TabIndex プロパティで設定されます。

また、デザイナーを使用してタブ オーダーを設定することもできます。

重要

.NET 7 と .NET 6 用のデスクトップ ガイド ドキュメントは作成中です。

タブ オーダーは、 [プロパティ] ウィンドウで、TabIndex プロパティを使用して設定することができます。 コントロールの TabIndex プロパティにより、タブ オーダー内での位置が決まります。 既定では、デザイナーに最初に追加されたコントロールの TabIndex 値が 0、2 番目のコントロールの TabIndex 値が 1 となり、それ以降も同様です。 最大の TabIndex がフォーカスされたら、Tab キーを押すことにより、最初の値に戻り、そのコントロールに最小の TabIndex 値が表示され ます。

GroupBox コントロールなどのコンテナー コントロールは、その子を、フォームの残りの部分とは別に扱います。 コンテナー内の子のそれぞれには、それ自体の TabIndex 値があります。 コンテナー コントロールにはフォーカスできないため、タブ オーダーがコンテナー コントロールに到達すると、TabIndex が最小のコンテナーの子コントロールがフォーカスされます。 Tab キーを押すと、各子コントロールは、最後のコントロールまで、TabIndex 値に従ってフォーカスされます。 最後のコントロールで Tab キーを押すと、次の TabIndex 値に基づいて、コンテナーの親の次のコントロールにフォーカスが移動します。

フォーム上に多くのコントロールがある場合は、いずれもタブ オーダーでスキップできます。 通常は、実行時に Tab キーを連続して押すと、タブ オーダーの各コントロールが順に選択されます。 TabStop プロパティをオフにすると、フォームのタブ オーダーでコントロールをスキップできます。

Designer

Visual Studio デザイナーの [プロパティ] ウィンドウを使用して、コントロールのタブ オーダーを設定します。

  1. デザイナーでコントロールを選択します。

  2. Visual Studio の [プロパティ] ウィンドウで、コントロールの TabIndex プロパティを、適切な番号に設定します。

    Visual Studio Properties pane for .NET Windows Forms with TabIndex property shown.

プログラムによる

  1. TabIndex プロパティを数値に設定します。

    Button1.TabIndex = 1
    
    Button1.TabIndex = 1;
    

タブ オーダーからコントロールを削除する

Tab キーを押したときにコントロールがフォーカスされないようにするには、TabStop プロパティを false に設定します。 Tab キーでコントロールを切り替えると、コントロールがスキップされます。 このプロパティを false に設定しても、コントロールのタブ オーダーは失われません。

注意

ラジオ ボタン グループでは、実行時のタブ ストップは 1 つです。 選択したボタン、つまり、Checked プロパティが true に設定されたボタンでは、TabStop プロパティが自動的に true に設定されます。 ラジオ ボタン グループのその他のボタンでは、TabStop プロパティが false に設定されています。

デザイナーで TabStop を設定する

  1. デザイナーでコントロールを選択します。

  2. Visual Studio の [プロパティ] ウィンドウで [TabStop] プロパティを False に設定します。

    Visual Studio Properties pane for .NET Windows Forms with TabStop property shown.

プログラムによって TabStop を設定する

  1. TabStop プロパティを falseに設定します。

    Button1.TabStop = false;
    
    Button1.TabStop = False
    

関連項目