2012-10-30 6 views
1

이것이 정말 이상하고 드문 질문입니다!Visual Studio에서 런타임 전에 Designer보기에서만 이벤트 사용

나는 System.Windows.Forms.Label 개체를 상속하는 특정 Label 컨트롤을 만들었으며 따라서 디자이너보기에서 볼 수 있고 사용할 수있게되었습니다. 레이블을 폼으로 드래그하고 Visual Studio에서 인스턴스를 만들면 입력 상자를 열고 텍스트가 무엇인지 묻습니다. 나는 OnCreateControl 이벤트를 무시하고 작동하지만 문제는 프로그램을 실행할 때 똑같은 일이 발생한다는 것입니다. 그러나 런타임 전에 디자이너보기에서 으로 작업하기를 원합니다. 상황을 어떻게 확인해야합니까? 여기

코드입니다 :

protected override void OnCreateControl() 
{ 
     base.OnCreateControl(); 
     this.Text = Microsoft.VisualBasic.Interaction.InputBox("Enter text: "); 
} 

답변

3

구성 요소가 순간에 또는하지 않도록 설계되어 있는지, 알아 재산 DesignMode을 사용

protected override void OnCreateControl() 
{ 
    base.OnCreateControl(); 
    if (DesignMode) 
     this.Text = Microsoft.VisualBasic.Interaction.InputBox("Enter text: "); 
} 
관련 문제