Başka bir formun nesnesine erişip değiştirmek
04 Temmuz 2009 – 10:47Birden fazla formla çalışıyorsanız , formların üzerinde bulunan nesnelere veri ekleme, bir takım özelliklerini değiştirmek isteyebilirsiniz.
diyelim ki Form1 üzerinde bulunan bir listboxa Form2 üzerinden bilgi eklemek istiyorsunuz. Bunun için ilk olarak form1 üzerinde bir fonksiyon tanımlıyoruz
[C#]
public void listboxEkle(string text)
{
listBox1.Items.Add(text);
}
[VB.NET]
Public Sub listboxEkle(ByVal text As String)
listBox1.Items.Add(text)
End Sub
daha sonra Form2 de bulunan bir butonda ekleme işlemini gerçekleştiriyoruz. Burada dikkat etmemiz gereken Form1 i standart türetme ile türetmediğimiz. [Standart türetme : Form1 frm1 = new Form1() ]
[C#]
private void button1_Click(object sender, EventArgs e)
{
Form1 frm1 = (Form1)Application.OpenForms["Form1"];
frm1.listboxEkle(textBox1.Text);
}
[VB.NET]
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim frm1 As Form1 = DirectCast(Application.OpenForms(”Form1″), Form1)
frm1.listboxEkle(textBox1.Text)
End Sub

