Merhabalar, C# Kod ile Form Oluşturup Kullanmak yazım ile C# derslerimize devam ediyorum. Bu yazıda sizlere kodla form üretip, içerisine nesneler ekleyip, kullanıcının girdiği veriyi nasıl alacağız onu göstereceğim. Bu konu hakkında zaten bir youtube videom var. Aşağıda bulabilirsiniz. O kodların yer aldığı projeyi github’a yükleme gereği duymadığım için kodları bu yazıda vereceğim.
C# Kod ile Form Oluşturup Kullanmak
Bu yazım Youtube kanalımda #CodeNight olarak paylaştığım ilk videodaki kodları içerecektir. Video aşağıda….
Kodlar burada…
Önce bu görüntüyü veriyorum. İşaretli alanlara dikkat ediniz lütfen.
Kodlar…
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; namespace DynamicThings.Cls.Forms { static public class DynamicTextForm { static Form frm; static Label lbl; static TextBox txt; static Button btn_ok; static Button btn_close; /// <summary> /// Bu metot, 1 label, 1 textbox, 1 button ve 1 form üretir. Nesneleri forma ekler ve formu gösterir. /// Button click ile form kapanır ve textboxtaki veri geri gönderilir. /// </summary> /// <returns></returns> public static string LoadForm() { // label üret lbl = new Label() { Name = "lbl", Text = "Lütfen Açıklamanızı Giriniz", AutoSize = false, Height = 50, Dock = DockStyle.Top, TextAlign = System.Drawing.ContentAlignment.MiddleCenter, }; //textbox üret txt = new TextBox() { Name = "txt", Text = "", AutoSize = false, Height = 125, Dock = DockStyle.Top, Multiline = true, }; //buton üret btn_ok = new Button() { Name = "btn", Text = "Kaydet", AutoSize = false, Height = 50, Dock = DockStyle.Top, }; btn_ok.Click += Btn_ok_Click; //buton üret btn_close = new Button() { Name = "btn", Text = "Vazgeç", AutoSize = false, Height = 50, Dock = DockStyle.Top, }; btn_close.Click += btn_close_Click; // form üret frm = new Form() { Name = "dynamicForm", Text = "dynamicForm", Height = 350, Width = 350, StartPosition = FormStartPosition.CenterScreen, }; frm.Controls.Add(btn_close); // forma ekle frm.Controls.Add(btn_ok); // forma ekle frm.Controls.Add(txt); // forma ekle frm.Controls.Add(lbl); // forma ekle frm.ShowDialog(); // forma göster return txt.Text; } static private void Btn_ok_Click(object sender, EventArgs e) { // trim boşlukları siler. Length ise karakter sayısıdır. trim boşlukları sildiği için // sadece boşlukta karakter saysısı 0 dır. Boşlukları silmezsek karakter sayısı yüksek çıkar if (txt.Text.Trim().Length == 0) MessageBox.Show("Mesajı boş bırakamazsınız."); else frm.Close(); } static private void btn_close_Click(object sender, EventArgs e) { txt.Text = ""; frm.Close(); } } }
Nasıl kullanırsınız?
string message = (Cls.Forms.DynamicTextForm.LoadForm()); if (message.Length > 0) label1.Text = message;
Kodların yazım aşaması yukarıdaki videoda var arkadaşlar. Takıldığınız yerde oraya bakabilirsiniz.
Biraz açıklarsak;
Burada class kullanarak kod ile bir form oluşturduk, yine kod ile label, textbox ve button oluşturup formumuza ekledik. Sonrasında kullanıcının bu formdan textbox’a yazdığı veriyi alarak geri geldik ve istediğimiz yerde kullandık.
Ben bu işlemi gerçek hayat projelerimde sürekli kullanıyorum. Örneğin bir ekranda bir kayda red verilmesi gerekiyorsa, kullanıcı neden red verdiğini açıklamak zorundadır. O açıklamayı almak için bu işlemi kullanıyorum. Tabiki sadece red değil, nerede bir işlem için sadece bir açıklama almam gerekiyorsa orada kullanırım. Bu red açıklaması olur, onay açıklaması olur veya sadece bir açıklama olur fark etmez yan,.
Bu yazımız bu kadar. Temelde kodları paylaşma amacı güttüğü için bir konu anlatımı yok.
Linktree üzerinden bağlantılarıma ulaşabilirsiniz. İşte Burada
Derslerime özel olarak hazırladığım Github Projeme buradan ulaşabilirsiniz… C# Eğitim Seti eğitimi sayfasına gitmek için tıklayınız.
Discord’a katılmayı unutmayın.
Sağlıcakla ve kodla kalın….