Programowe dodawanie kontrolek do formy w Windows Forms (VS 2015)

Każdy, kto ma doświadczenie z C# czy VB.NET wie, że dodanie przycisku do formy nie jest trudnym zadaniem. Początkujący zapewne przeciągnie przycisk z toolboxa i umieści go na formie. Następnie tak umieszczony przycisk zostanie odpowiednio skonfigurowany poprzez nadanie mu odpowiednich właściwości i oprogramowane zostaną jego zdarzenia.
Wszystko w porządku, działać będzie i będzie każdy zadowolony. Można jednak uzyskać to samo niekoniecznie zaprzęgając w tym celu edytor.

form0
Wystarczy nam utworzona w edytorze forma „Form1” – edytujemy jej metodę „Form1_Load” tak aby wyglądała tak jak na załączonym fragmencie kodu:

        private void Form1_Load(object sender, EventArgs e)
        {
            Button btn = new Button();
            btn.Name = "btnSave";
            btn.Text = "Zapsz XML";
            btn.Location = new Point(10, 10);
            btn.Size = new Size(100, 45);
            this.Controls.Add(btn);
        }

W wyniku wykonania tego kodu otrzymujemy formę „Form1” z umieszczonym na niej przyciskiem.

No ale co komu po przycisku, który nie działa? Nie działa bo nie ma żadnej metody obsługującej zdarzenia i nie ma obsługi zdarzeń.

Dodajemy więc metodę obsługującą zdarzenia.

        private void btn_Click(object sender, EventArgs e)
        {
            MessageBox.Show("kliknięcie!");
        }

Oraz dodajemy obsługę zdarzenia „click” do metody ”Form1_Load”

        private void Form1_Load(object sender, EventArgs e)
        {
            Button btn = new Button();
            btn.Name = "btnSave";
            btn.Text = "Zapsz XML";
            btn.Location = new Point(10, 10);
            btn.Size = new Size(100, 45);
            this.Controls.Add(btn);

            //obsługa zdarzenia "Click"
            btn.Click += new System.EventHandler(btn_Click);

        }

Następnie uruchamiamy VisualStudio i mamy działający przycisk na formie, po kliknięciu na którym pojawia się okno z informacją „kliknięcie!”.

form1

Avatar

Autor: gervee

Pełnoetatowy ojciec małej gromadki, programista(?), "amator" fotograf, "dłubacz" lubiący DIY, miłośnik chmielonego napitku. "Żartowniś" bez poczucia humoru ;).

Dodaj komentarz