C# Formlar arası veri gönderme

0

Herkese merhaba benim size sormak istediğim şey bir başka forma veri aktarmak ama benim yapmak istediğim şey internetteki gibi ikinci formdaki nesnenin özelliklerindeki "modifiers" public yapmak değil oraya bir değişkene veriyi atıp istediğim zaman ondaki veriyi kullanmak istiyorum ya da önereceğiniz yöntemler varsa şimdiden teşekkür ederim 

kullanici308782 kullanici308782 (1)
9 yıl önce sordu

    Toplam 3 Cevap


    0

    Yanlış anlama olmadıysa açık olan ikinci formun içinden veri okumak istiyorsunuz.

    Bunun için property yani özellikten yararlanabilirsiniz. Sizin için basit bir örnek.

    Form 1 üzerinde sadece iki buton var. Birtanesi

    Form 1

    using System;
    using System.Windows.Forms;
    
    namespace WindowsFormsApplication3
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
    
                Form2 f2 = new Form2();          //ikinci formu aç  
                f2.Show();
            }
    
            private void button2_Click(object sender, EventArgs e)
            {
                  // Açık olan formlar içinde gezin ve form2'i bul. Sonra Data adındaki özelliği oku
                foreach(Form f in Application.OpenForms)
                {
                    if (f.Name=="Form2")
                    {
                        MessageBox.Show(((Form2)f).Data);
                    }
                }
            }
        }
    }
    

    Form2 

    Sadece bit buton var ve tıklandığında Data adındaki özelliğe veri dolduruyor.

    using System;
    using System.Windows.Forms;
    
    namespace WindowsFormsApplication3
    {
        public partial class Form2 : Form
        {
            public string Data { get; set; } // Özellik tanımlama
            public Form2()
            {
               
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                Data = "uzmanim.net";
            }
        }
    }
    

    Yukarıdaki şekilde açık olan bir formdaki özelliğe atanmış veri okunabilir.

    ergin ergin (2539)
    9 yıl önce cevaplandı

    • Form 1 den Form 2 ye değişken gönderip orada istediğimiz zaman çağırmaktı ama sorunumu buldum kullanici308782 9 yıl önce

    0

    Biraz daha bakınca istediğim cevabı buldum arkadaşlar 

    http://www.sanalkurs.net/forum/c-net/c-formlar-arasi-veri-aktarimi/

    kullanici308782 kullanici308782 (1)
    9 yıl önce cevaplandı

      0

      Form1 den Form2 ye veri göndereceğinizi farzedersek. 

      //Form1

      Form2 frm=new Form2();
      frm.degisken="asd";
      frm.ShowDialog();

      //Form2

      public string degisken="";

      Form2 içinde oluşturduğumuz public değişkene bu şekilde ulaşabiliriz.

      enoua enoua (108)
      9 yıl önce cevaplandı

        üyelik gerektirir

        Cevap yazabilmek için üye girişi yapmalısınız.

        Eğer uzmanim.net üyesiyseniz giriş yapabilirsiniz: üye girişi yap
        uzmanim.net'e üye olmak çok kolaydır: hemen kayıt ol