Language

Control.Anchor プロパティ

定義

コントロールがバインドされるコンテナーの端を取得または設定し、コントロールのサイズを親と共に変更する方法を決定します。

public:
 virtual property System::Windows::Forms::AnchorStyles Anchor { System::Windows::Forms::AnchorStyles get(); void set(System::Windows::Forms::AnchorStyles value); };
public virtual System.Windows.Forms.AnchorStyles Anchor { get; set; }
member this.Anchor : System.Windows.Forms.AnchorStyles with get, set
Public Overridable Property Anchor As AnchorStyles

プロパティ値

AnchorStyles値のビットごとの組み合わせ。 既定値は Top と Left です。

例

次のコード例では、フォームに Button を追加し、その共通プロパティの一部を設定します。 次の使用例は、フォームの右下隅にボタンを固定し、フォームのサイズ変更時に相対的な位置を維持します。 次に、 BackgroundImage を設定し、ボタンのサイズを Imageと同じサイズに変更します。 次に、 TabStop を true に設定し、 TabIndex プロパティを設定します。 最後に、ボタンの Click イベントを処理するイベント ハンドラーを追加します。 この例では、ImageListという名前のimageList1が必要です。

   // Add a button to a form and set some of its common properties.
private:
   void AddMyButton()
   {
      // Create a button and add it to the form.
      Button^ button1 = gcnew Button;

      // Anchor the button to the bottom right corner of the form
      button1->Anchor = static_cast<AnchorStyles>(AnchorStyles::Bottom | AnchorStyles::Right);

      // Assign a background image.
      button1->BackgroundImage = imageList1->Images[ 0 ];

      // Specify the layout style of the background image. Tile is the default.
      button1->BackgroundImageLayout = ImageLayout::Center;

      // Make the button the same size as the image.
      button1->Size = button1->BackgroundImage->Size;

      // Set the button's TabIndex and TabStop properties.
      button1->TabIndex = 1;
      button1->TabStop = true;

      // Add a delegate to handle the Click event.
      button1->Click += gcnew System::EventHandler( this, &Form1::button1_Click );

      // Add the button to the form.
      this->Controls->Add( button1 );
   }
// Add a button to a form and set some of its common properties.
private void AddMyButton()
{
   // Create a button and add it to the form.
   Button button1 = new Button();

   // Anchor the button to the bottom right corner of the form
   button1.Anchor = (AnchorStyles.Bottom | AnchorStyles.Right);

   // Assign a background image.
   button1.BackgroundImage = imageList1.Images[0];

   // Specify the layout style of the background image. Tile is the default.
   button1.BackgroundImageLayout = ImageLayout.Center;
   
   // Make the button the same size as the image.
   button1.Size = button1.BackgroundImage.Size;

   // Set the button's TabIndex and TabStop properties.
   button1.TabIndex = 1;
   button1.TabStop = true;

   // Add a delegate to handle the Click event.
   button1.Click += new System.EventHandler(this.button1_Click);

   // Add the button to the form.
   this.Controls.Add(button1);
}
' Add a button to a form and set some of its common properties.
Private Sub AddMyButton()
   ' Create a button and add it to the form.
   Dim button1 As New Button()
   
   ' Anchor the button to the bottom right corner of the form
   button1.Anchor = AnchorStyles.Bottom Or AnchorStyles.Right
   
   ' Assign a background image.
   button1.BackgroundImage = imageList1.Images(0)

   ' Specify the layout style of the background image. Tile is the default.
   button1.BackgroundImageLayout = ImageLayout.Center
   
   ' Make the button the same size as the image.
   button1.Size = button1.BackgroundImage.Size
   
   ' Set the button's TabIndex and TabStop properties.
   button1.TabIndex = 1
   button1.TabStop = True

   ' Add a delegate to handle the Click event.
   AddHandler button1.Click, AddressOf Me.button1_Click
   
   ' Add the button to the form.
   Me.Controls.Add(button1)
End Sub

注釈

Anchor プロパティを使用して、親コントロールのサイズを変更する場合にコントロールのサイズを自動的に変更する方法を定義します。 コントロールを親コントロールに固定すると、親コントロールのサイズが変更されたときに、固定されたエッジが親コントロールのエッジに対して同じ位置に維持されます。

コントロールは、そのコンテナーの 1 つ以上のエッジに固定できます。 たとえば、Form プロパティ値が Button および Anchor に設定されているTopを持つBottomがある場合、ButtonのFormが大きくなると、HeightはFormの上端と下端への固定距離を維持するように引き伸ばされます。

Note

Anchor と Dock のプロパティは相互に排他的です。 一度に設定できるセットは 1 つだけで、最後のセットが優先されます。

注意 (継承者)

派生クラスの Anchor プロパティをオーバーライドする場合は、基底クラスの Anchor プロパティを使用して基本実装を拡張します。 それ以外の場合は、すべての実装を指定する必要があります。 get プロパティのsetアクセサーと Anchor アクセサーの両方をオーバーライドする必要はありません。必要に応じて 1 つだけオーバーライドできます。

適用対象

こちらもご覧ください