Control.SuspendLayout 메서드


컨트롤의 레이아웃 논리를 임시로 일시 중단합니다.Temporarily suspends the layout logic for the control.

 void SuspendLayout();
public void SuspendLayout ();
member this.SuspendLayout : unit -> unit
Public Sub SuspendLayout ()


다음 코드 예제에서는 폼에 단추 두 개를 추가 합니다.The following code example adds two buttons to a form. 예제에서는 및 메서드를 사용 하 여 단추를 추가 SuspendLayout 합니다 ResumeLayout .The example transactions the addition of the buttons by using the SuspendLayout and ResumeLayout methods.

   void AddButtons()
      // Suspend the form layout and add two buttons.
      Button^ buttonOK = gcnew Button;
      buttonOK->Location = Point(10,10);
      buttonOK->Size = System::Drawing::Size( 75, 25 );
      buttonOK->Text = "OK";
      Button^ buttonCancel = gcnew Button;
      buttonCancel->Location = Point(90,10);
      buttonCancel->Size = System::Drawing::Size( 75, 25 );
      buttonCancel->Text = "Cancel";
      array<Control^>^temp5 = {buttonOK,buttonCancel};
      this->Controls->AddRange( temp5 );
private void AddButtons()
   // Suspend the form layout and add two buttons.
   Button buttonOK = new Button();
   buttonOK.Location = new Point(10, 10);
   buttonOK.Size = new Size(75, 25);
   buttonOK.Text = "OK";

   Button buttonCancel = new Button();
   buttonCancel.Location = new Point(90, 10);
   buttonCancel.Size = new Size(75, 25);
   buttonCancel.Text = "Cancel";
   this.Controls.AddRange(new Control[]{buttonOK, buttonCancel});
Private Sub AddButtons()
   ' Suspend the form layout and add two buttons.
   Dim buttonOK As New Button()
   buttonOK.Location = New Point(10, 10)
   buttonOK.Size = New Size(75, 25)
   buttonOK.Text = "OK"
   Dim buttonCancel As New Button()
   buttonCancel.Location = New Point(90, 10)
   buttonCancel.Size = New Size(75, 25)
   buttonCancel.Text = "Cancel"
   Me.Controls.AddRange(New Control() {buttonOK, buttonCancel})
End Sub


컨트롤의 레이아웃 논리는 메서드가 호출 될 때까지 일시 중지 됩니다 ResumeLayout .The layout logic of the control is suspended until the ResumeLayout method is called.

SuspendLayoutResumeLayout 메서드는 여러 이벤트를 표시 하지 않고 Layout 컨트롤의 여러 특성을 조정 하는 데 함께 사용 됩니다.The SuspendLayout and ResumeLayout methods are used in tandem to suppress multiple Layout events while you adjust multiple attributes of the control. 예를 들어 일반적으로 메서드를 호출 하 고 SuspendLayout Size 컨트롤의,, Location Anchor 또는 속성을 설정한 Dock 다음 메서드를 호출 ResumeLayout 하 여 변경 내용이 적용 되도록 할 수 있습니다.For example, you would typically call the SuspendLayout method, then set the Size, Location, Anchor, or Dock properties of the control, and then call the ResumeLayout method to enable the changes to take effect.

에 대 한 보류 중인 호출이 성공적으로 호출 되지 않아야 합니다 SuspendLayout ResumeLayout .There must be no pending calls to SuspendLayout for ResumeLayout to be successfully called.


부모 컨트롤에 여러 컨트롤을 추가 하는 경우 SuspendLayout 추가할 컨트롤을 초기화 하기 전에 메서드를 호출 하는 것이 좋습니다.When adding several controls to a parent control, it is recommended that you call the SuspendLayout method before initializing the controls to be added. 부모 컨트롤에 컨트롤을 추가한 후 메서드를 호출 ResumeLayout 합니다.After adding the controls to the parent control, call the ResumeLayout method. 이렇게 하면 많은 컨트롤을 사용 하 여 애플리케이션의 성능을 늘어납니다.This will increase the performance of applications with many controls.

적용 대상

추가 정보