• Web sitemizin içeriğine ve tüm hizmetlerimize erişim sağlamak için Web sitemize kayıt olmalı ya da giriş yapmalısınız. Web sitemize üye olmak tamamen ücretsizdir.
  • Sohbetokey.com ile canlı okey oynamaya ne dersin? Hem sohbet et, hem mobil okey oyna!
  • Soru mu? Sorun mu? ''Bir Sorum Var?'' sistemimiz aktiftir. Paylaşın beraber çözüm üretelim.

Formlar Arası Kontrol ve Formları Gösterme- Gizleme

Üyelik Tarihi
7 Ocak 2015
Konular
4,091
Mesajlar
4,274
MFC Puanı
40
Bu uygulamada Form1 de button 1 e tıklayarak Form2 pencere açma uygulaması yapacağız.

Bunun için öncelikle Form1 penceresine bir tan buton ekliyoruz. Bu butonun Click olayına Form2 nesnenin bir örneğini alıyotuz. Bu nesne ile gerekli özellikleri ayarladıktan sonar Show metodunu kullanarak Form2 penceresinin gösterilmesini sağlıyoruz.

Burada amacımız Form1 den Form2 açtırıp Form1 penceresini kapatmak ve Form2 den tekrar Form1 penceresini açtırıp Form2 penceresini kapatmak. Bunu yapabilmek için Form sınıfından Form1 sınıfına erişmemiz gerekiyor. Bu erişimi Form2 sınıfına ParentForm özelliğini ekleyerek yapıyoruz. ParentForm özelliğine Form1 nesnesinin referansını vereceğiz. Böylece Form2 den Form1 nesnesine erişmiş olacağız.

Form2 penceresine de bir buton ekliyoruz. Bu butonın Click olayına Form1 nesnesini ParentForm.Show() metodu ile tekrar görünür yapıyoruz. this.Close metodu ile de Form2 pencerisini kapatıyoruz. Form2 açıldığında Form1 penceresini kapatmak içinde Form2_Load metodunda ParentForm.Hide() metodunu kullanıcağız . Böylece Form2 penceresi açılırken Form1 penceresini kapatmış yani gizlemiş olacağız.



/// Form1.cs

Kod:
using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
using System.Collections; 

namespace Formlar_Arasi_Control 
{ 
    public partial class Form1 : Form 
    { 
        public Form1() 
        { 
            InitializeComponent(); 
        } 
        
        private **** button1_Click(object sender, EventArgs e) 
        { 
            Form2 form = new Form2(); 

            form.ParentForm = this; // form1 nesnesi parentform a atama 

            form.Show(); 
        } 
  
    } 
} 


/// Form2.cs


using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 

namespace Formlar_Arasi_Control 
{ 
    public partial class Form2 : Form 
    { 
        public Form2() 
        { 
            InitializeComponent(); 
        } 

        public Form ParentForm { get; set; } 


        private **** button1_Click(object sender, EventArgs e) 
        { 
            ParentForm.Show(); // form2den button1 e tıklandığında form2 i kapat form1 i tekrar göster 
            this.Close(); 
        } 

        private **** Form2_Load(object sender, EventArgs e) 
        { 
            ParentForm.Hide();// form2 açılırken form1 penceresini gizle 
        } 
    } 
}
 
Üst