2016-10-12 2 views
0

매우 최근에 시작하여 C#을 시작했으며이 질문이 벙어리로 들릴 경우 미안합니다.프로그래밍 방식으로 ListBox를 폼에 추가하는 방법

버튼 클릭에서 튀어 나오는 양식에 목록 상자를 어떻게 추가합니까?

참고 : 양식은 솔루션 탐색기에서 추가 된 것이 아니므로 목록 상자를 도구 상자에서 양식으로 끌 수 있습니다.

그래서 내가 원하는 것은 파일에 ListBox를 만드는 것입니다. drawer1Form 추가 항목을 추가 할 수 있습니다. 사전에 도와 주셔서 감사합니다! :)

private void drawer1button_Click(object sender, EventArgs e)  // Drawer 1 Button 
    { 
     drawer1Form df1 = new drawer1Form(); 
     df1.StartPosition = FormStartPosition.CenterScreen; 
     df1.Show(); 
    } 
    public partial class drawer1Form : Form       // Creates drawer1Form 
    { 
     public drawer1Form() 
     { 
      Text = "Drawer 1 "; 
     } 

    } 
+1

왜 디자이너를 피하시겠습니까? 그것은 폼이 어떻게 컨트롤을 생성하고 이벤트를 연결하는지에 대해 많은 것을 가르쳐 줄 것입니다. – LarsTech

+0

@LarsTech 디자이너가 솔루션 탐색기를 통해 추가 할 수있는 양식을 의미합니까? (미안, C#에 익숙하지 않은, 아직 배우기.) Form1에서 버튼을 누르면 원래 프로그램에 Form2 팝업이 있었기 때문에 피하지 못합니다. Form2에서 단추를 클릭하면 ListBox가 다른 Form에 표시되므로 Designer를 통해 완전히 사용자 지정 가능한 Form이 필요하다고 생각하지 않습니다. ListBox가있는 간단한 코딩 된 코드 만 하하를 처리합니다. –

답변

1

다른 모든 개체와 거의 같은 방식으로 작업합니다.

myAwesomeListBox = new ListBox(); 
myAwesomeListBox.SuspendLayout(); 

// set all the properties that you want 
myAwesomeListBox.Name = "myAwesomeListBox"; 
myAwesomeListBox.Location = new Point(...); // place it somewhere 
myAwesomeListBox.Size = new Size(...); // give it a size 
// etc... 

df1.Controls.Add(myAwesomeListBox); 
myAwesomeListBox.ResumeLayout(); 

이 그것을해야한다 : 폼의 클래스에서

는 다음과 같이 추가 버튼 이벤트 핸들러에 나서

private ListBox myAwesomeListBox; 

를 추가합니다.

먼저 설계자가 먼저 작성한 다음 양식의 .Designer.cs 파일에서 생성 된 코드를 살펴 보길 권한다. 그 내용을 읽은 후에 매우 잘 이해하게 될 것이다.

+0

고마워! –

관련 문제