コントロールをドッキングおよび固定する方法 (Windows フォーム .NET)

実行時にユーザーがサイズを変更できるフォームをデザインする場合は、フォーム上のコントロールのサイズと位置が適切に変更される必要があります。 コントロールには、フォームのサイズが変更されたときの自動の配置およびサイズ変更に役立つ 2 つのプロパティがあります。

  • Control.Dock

    ドッキングされるコントロールで、フォーム コントロールまたはコンテナー コントロールのコンテナーに合わせて端を調整します。 たとえば、Windows のエクスプローラーでは、TreeView コントロールがウィンドウの左側にドッキングされ、ListView コントロールがウィンドウの右側にドッキングされます。 ドッキング モードは、コントロールのコンテナーのどの側で使用することも、コンテナーの残りの領域を埋めるように設定することもできます。

    コントロールのさまざまなドッキング モードを示す Windows フォーム

    コントロールは逆 z オーダーでドッキングされ、Dock プロパティが AutoSize プロパティと連携します。 詳細については、「サイズの自動調整」を参照してください。

  • Control.Anchor

    固定されたコントロールのフォームのサイズが変更されたときに、コントロールとアンカーの位置の間の距離は維持されます。 たとえば、フォームの左端、右端、下端に固定されている TextBox コントロールがある場合、フォームのサイズが変更されると、TextBox コントロールのサイズが、フォームの右端と左端から同じ距離に維持されるように水平方向に変更されます。 また、コントロールは、常にフォームの下端から同じ距離に位置するように垂直方向に配置されます。 コントロールが固定されていない状態でフォームのサイズが変更された場合は、フォームの端を基準としたコントロールの位置が変更されます。

    コントロールのさまざまな固定モードを示す Windows フォーム

詳細については、「コントロールの位置とレイアウト」を参照してください。

コントロールをドッキングする

コントロールは、その Dock プロパティを設定することによってドッキングされます。

注意

継承されたコントロールをドッキングできるようにするには、Protected にする必要があります。 コントロールのアクセス レベルを変更するには、 [プロパティ] ウィンドウでその [Modifier] プロパティを設定します。

デザイナーを使用する

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

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

  2. [プロパティ] ウィンドウで、 [Dock] プロパティの右にある矢印をクリックします。

    .NET Windows フォームの Dock プロパティが表示された Visual Studio の [プロパティ] ペイン。

  3. コントロールをドッキングするコンテナーの端を表すボタンをクリックします。 コントロールのフォームまたはコンテナー コントロールの全体に表示するには、中央のボックスをクリックします。 ドッキングを無効にするには、 [(なし)] をクリックします。

    .NET Windows フォームの Dock プロパティが展開された Visual Studio の [プロパティ] ペイン。

ドッキングされた端の境界に合わせて、コントロールのサイズが自動的に変更されます。

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

  1. コントロールで Dock プロパティを設定します。 この例では、コンテナーの右側にボタンがドッキングされています。

    button1.Dock = DockStyle.Right;
    
    button1.Dock = DockStyle.Right
    

コントロールを固定する

コントロールは、1 つ以上の値に Anchor プロパティを設定することにより端に固定されます。

注意

ComboBox コントロールなどの特定のコントロールの高さには制限があります。 コントロールをフォームまたはコンテナーの下部に固定しても、コントロールの高さを強制的に制限より高くすることはできません。

継承されたコントロールを固定できるようにするには、Protected にする必要があります。 コントロールのアクセス レベルを変更するには、 [プロパティ] ウィンドウでその [Modifiers] プロパティを設定します。

デザイナーを使用する

Visual Studio デザイナーの [プロパティ] ウィンドウを使用して、コントロールの固定された端を設定します。

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

  2. [プロパティ] ウィンドウで、 [Anchor] プロパティの右にある矢印をクリックします。

    .NET Windows フォームの Anchor プロパティが表示された Visual Studio の [プロパティ] ペイン。

  3. アンカーを設定したり、設定を解除したりするには、十字の上、左、右、または下の端をクリックします。

    .NET Windows フォームの Anchor プロパティが展開された Visual Studio の [プロパティ] ペイン。

プログラムによってアンカーを設定する

  1. コントロールで Anchor プロパティを設定します。 この例では、コンテナーの右側と下側にボタンが固定されています。

    button1.Anchor = AnchorStyles.Bottom | AnchorStyles.Right;
    
    button1.Anchor = AnchorStyles.Bottom Or AnchorStyles.Right
    

関連項目