Control.Layout Событие

Определение

Происходит, когда необходимо изменить позицию дочерних элементов управления данного элемента управления.Occurs when a control should reposition its child controls.

public:
 event System::Windows::Forms::LayoutEventHandler ^ Layout;
public event System.Windows.Forms.LayoutEventHandler Layout;
member this.Layout : System.Windows.Forms.LayoutEventHandler 
Public Custom Event Layout As LayoutEventHandler 

Примеры

В следующем примере кода показано, как по центру Form на экране в событии Layout.The following code example centers a Form on the screen in the Layout event. При этом форма будет находиться в центре по мере ее изменения пользователем.This will keep the form centered as the user resizes it. Для этого примера требуется, чтобы был создан элемент управления Form.This example requires that you have created a Form control.

private:
   void MyForm_Layout( Object^ /*sender*/, System::Windows::Forms::LayoutEventArgs^ /*e*/ )
   {
      // Center the Form on the user's screen everytime it requires a Layout.
      this->SetBounds( (Screen::GetBounds( this ).Width / 2) - (this->Width / 2), (Screen::GetBounds( this ).Height / 2) - (this->Height / 2), this->Width, this->Height, BoundsSpecified::Location );
   }
private void MyForm_Layout(object sender, System.Windows.Forms.LayoutEventArgs e)
{
   // Center the Form on the user's screen everytime it requires a Layout.
   this.SetBounds((Screen.GetBounds(this).Width/2) - (this.Width/2),
       (Screen.GetBounds(this).Height/2) - (this.Height/2),
       this.Width, this.Height, BoundsSpecified.Location);	
}

Private Sub MyForm_Layout(ByVal sender As Object, _
    ByVal e As System.Windows.Forms.LayoutEventArgs) Handles MyBase.Layout

    ' Center the Form on the user's screen everytime it requires a Layout.
    Me.SetBounds((System.Windows.Forms.Screen.GetBounds(Me).Width / 2) - (Me.Width / 2), _
        (System.Windows.Forms.Screen.GetBounds(Me).Height / 2) - (Me.Height / 2), _
        Me.Width, Me.Height, System.Windows.Forms.BoundsSpecified.Location)
End Sub

Комментарии

Событие Layout возникает при добавлении или удалении дочерних элементов управления, при изменении границ элемента управления и при возникновении других изменений, которые могут повлиять на макет элемента управления.The Layout event occurs when child controls are added or removed, when the bounds of the control changes, and when other changes occur that can affect the layout of the control. Событие макета можно подавлять с помощью методов SuspendLayout и ResumeLayout.The layout event can be suppressed using the SuspendLayout and ResumeLayout methods. Приостановка макета позволяет выполнять несколько действий с элементом управления без необходимости выполнять макет для каждого изменения.Suspending layout enables you to perform multiple actions on a control without having to perform a layout for each change. Например, при изменении размера и перемещении элемента управления каждая операция вызовет событие Layout.For example, if you resize and move a control, each operation would raise a Layout event.

Дополнительные сведения об обработке событий см. в разделе обработка и вызов событий.For more information about handling events, see Handling and Raising Events.

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

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