Bir değişkeni farklı formlarda kullanmak istiyorsak değişkeni public static olarak tanımlamamız gerekir.Bununla ilgili basit bir örnek yapacak olursak;
Form1’i aşağıdaki gibi oluşturalım.
Daha sonra Form2’yi aşağıdaki gibi oluşturalım.
Form1’deki textbox’a girilen metni “Değişkene Al” butonuyla oluşturduğumuz değişkene aktaran ve “Form2’yi Aç” butonuyla Form2’yi açmak için gerekli kodları aşağıdaki gibi oluşturalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | namespace farkliform_degisken_kullanma { public partial class Form1 : Form { public Form1() { InitializeComponent(); } public static string metin; // Her iki formdada kullanılacak değişkeni tanımlıyoruz. private void button1_Click(object sender, EventArgs e) { metin = textBox1.Text; } private void button2_Click(object sender, EventArgs e) { Form2 f2 = new Form2(); f2.Show(); } } } |
Bu işlemlerden sonra Form2’de bulunan “Değişkeni Yazdır“butonua çift tıklayarak aşağıdaki kodları yazalım.
1 2 3 4 5 6 7 | private void button1_Click(object sender, EventArgs e) { label1.Text = Form1.metin; } |
Bu kodu yazdıktan sonra form1’de oluşturmuş olduğumuz metin değişkeninin içeriğini Label1’e yazdırmış oluyoruz. Programın çıktısı aşağıdaki şekilde olacaktır.
yıllardır yazılımla uğraşırım ve formdan forma veri aktarma her zaman sorun olmuştur benim için. açıklama için teşekkürler.
Teşekkürler