프로그램

C# 에서, Control 을 동적으로 생성.

(주)CKBcorp., 2011. 12. 30. 14:46
반응형

결론 : 코드로 생성한 Control은, Form 에 붙여줘야 화면에 보인다. 

예를 들어, 어떤 함수에서 Button을 생성한다 치자.

public void MakeButton()
{
Button newBtn = new Button();
Button.Left = 100;
Button.Top = 100;
Button.Visible = true;
}


이것만으로는 부족하다.
예를 들어 Form 의 이름이 Form1 이라면,

public void MakeButton()
{
Button newBtn = new Button();
newBtn.Left = 100;
newBtn.Top = 100;
newBtn.Visible = true;
Form1.Controls.Add( newBtn );  
Form1.Controls.Remove( newBtn );  
}


이렇게, 생성한 Control 을 Form 에 붙여 줘야, 화면에 보이게 된다.
삭제할 때에도 Controls.Remove() 로 삭제한다. 단순히 

newBtn = null ;

한다고 없어지는 건 아니다. ( C# 은 new 는 있지만, delete 는 없다. )

자세한 설명은 MSDN( http://support.microsoft.com/kb/815780/ko ) 을 보자. 



 

반응형