Control.Anchor Свойство

Определение

Возвращает или задает границы контейнера, с которым связан элемент управления, и определяет способ изменения размеров элемента управления при изменении размеров его родительского элемента.Gets or sets the edges of the container to which a control is bound and determines how a control is resized with its parent.

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.A bitwise combination of the AnchorStyles values. Значения по умолчанию — Top и Left.The default is Top and Left.

Примеры

В следующем примере кода в форму добавляется Button и задаются некоторые общие свойства.The following code example adds a Button to a form and sets some of its common properties. В этом примере кнопка привязывается к нижнему правому углу формы, чтобы сохранить ее относительное расположение при изменении размера формы.The example anchors the button to the bottom-right corner of the form so it keeps its relative position as the form is resized. Затем он устанавливает BackgroundImage и изменяет размер кнопки на тот же размер, что и Image.Next it sets the BackgroundImage and resizes the button to the same size as the Image. Затем в примере устанавливается TabStop в true и задается свойство TabIndex.The example then sets the TabStop to true and sets the TabIndex property. Наконец, он добавляет обработчик событий для обработки события Click кнопки.Lastly, it adds an event handler to handle the Click event of the button. В этом примере требуется ImageList с именем imageList1.This example requires that you have an ImageList named 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, чтобы определить, как автоматически изменяется размер элемента управления при изменении размера родительского элемента управления.Use the Anchor property to define how a control is automatically resized as its parent control is resized. Привязка элемента управления к его родительскому элементу управления гарантирует, что привязанные границы остаются в той же области, что и границы родительского элемента управления, когда изменяется размер родительского элемента управления.Anchoring a control to its parent control ensures that the anchored edges remain in the same position relative to the edges of the parent control when the parent control is resized.

Можно привязать элемент управления к одному или нескольким границам контейнера.You can anchor a control to one or more edges of its container. Например, если имеется Form с Button, для свойства Anchor которого задано значение Top и Bottom, Button растягивается для поддержки привязанного расстояния к верхнему и нижнему краям Form как Height Form увеличивается.For example, if you have a Form with a Button whose Anchor property value is set to Top and Bottom, the Button is stretched to maintain the anchored distance to the top and bottom edges of the Form as the Height of the Form is increased.

Примечание

Свойства Anchor и Dock являются взаимоисключающими.The Anchor and Dock properties are mutually exclusive. В каждый момент времени может быть задан только один, а последний набор имеет приоритет.Only one can be set at a time, and the last one set takes precedence.

Примечания для тех, кто наследует этот метод

При переопределении свойства Anchor в производном классе используйте свойство базового класса Anchor для расширения базовой реализации.When overriding the Anchor property in a derived class, use the base class's Anchor property to extend the base implementation. В противном случае необходимо предоставить всю реализацию.Otherwise, you must provide all the implementation. Не требуется переопределять методы доступа get и set свойства Anchor; При необходимости можно переопределить только один из них.You are not required to override both the get and set accessors of the Anchor property; you can override only one if needed.

Применяется к

Дополнительно