C# - PENCERELER ARASI GEÇİŞ - COMBOBOX KONTROLÜ

Merhabalar uzun zamandır beraber değildik :) Bugün combobox kontrolünü kullanarak pencereler arası geçişi yapacağız.
Programımız gayet basit. Çalıştırdığımızda karşımıza main windowumuz gelecek, combobox kontrolünden istediğimiz rengi seçeceğiz. Seçtiğimiz renkten oluşan bir pencere daha açılacak ve bize bir hesap makinesi sunacak. İşte bu noktada pencereler arası geçişi kullanacağız. 




Önce combobox kontrolümüzü gridimizin üzerine attık. İçine giriş yaptıracağız.






Combobox kontrolüne veri girişi yaptıracağız. Şöyle ki, combobox seçiliyken properties'den Items'i buluyoruz. Item nesne demek. Yani combobox a girilecek veri, nesne. Mantığını anlayalım.
Items bölümünde bir buton var, 3 nokta. Oraya tıklıyoruz. Bu arada gördüğünüz gibi WpfApplication29 yazan bölümde ek windowlarımız var. Onlarıda yapmayı öğreteceğim.




Şu şekilde bir pencere çıktı karşımıza. Collection Editor : Items yazıyor. Ben verileri girdirdim. Gördüğünüz gibi sol alt köşede Add butonu var. Add butonuna tıklayınca bir ıtem açılıyor. 0. indexten den başlıyor. Buna dikkat edelim. Combobox daima 0. indexden başlar. Eğer bunu bilmezsek programın kodları yanlış olur.

0. İndexe "seçiniz..." yazalım ki karizmatik dursun. Peki adını nasıl yazacağız ? Yanda açılan koskocaman properties bölümünde content yerini buluyoruz ve yanına "seçiniz.." yazıyoruz. Çok kolay. 
Yalnız, visual studio 2012 de bir problem var. Combobox verileriniz, program çalıştıktan sonra button şeklinde görülebilir. Bunu değiştirmek için altta açılan "button, checkbox, comboboxıtem..." falan filan yazan yerden comboboxıtem i seçin. 
İlk ıtem i ekledikten sonra tekrar add diyoruz. Bu sefer 1. index açılacak. Oraya renkleri girmeye başlayalım. Renkleri girdikten sonra OK'a tıklayınız.




İşimiz bitmedi dostlarım. Pencereler arası geçiş yapacağımız için Ek olarak window yaratacağız. Bunu şöyle yapıyoruz;

Projemizin adının üstüne sağ tık yapıp Add'i seçiyoruz. Ekleyeceğiz yani. Sonra yandan açılan listeden Window'u seçiyoruz. Window ekleyeceğiz yani. Her şey mantık. Tıklayınız window'a.




Karşımızı büyük bir pencere geldi. Burada çok önemli işler yapabiliriz aslında. İleri ki seviyelerde buradan page, class ekleme yapacağız. Şimdilik Windowa tıklıyoruz ama zaten windowu seçtiğimiz için pencerede seçili olarak geliyor.

Name kısmına karıştırmamak adına mavi yazdım çünkü hangi rengin hangi pencereye ait olduğunu bulmam kod yazarken zorlaşır. 
Mavi penceremin adını mavi yaptım. Add'e tıkladım.







Bakınız neler eklendi programımıza :)

Şimdi comboboxa çift tıklıyoruz. Combobox ın itemlerine tıkladığımız anda gerçekleşecek olayların kodlarını yazacağız. 
Biz bir renge tıkladığımzda ne olacak? Yeni bir pencere açılacak. Yine mavi üzerinden gidiyorum gençler.

private void combobox1_SelectionChanged(object sender, SelectionChangedEventArgs e)

        {
            if (combobox1.SelectedIndex == 3)
            {
                mavi goster = new mavi();
                goster.Show();
            }

        }

Alınız kodlar. Hemencecik mantığını anlatıyorum size.
private void yazan yer sınıfımız. combobox1_selectionchanged yazısı combobox'ın altında olduğumuz anlamına geliyor. button_click gibi.
if dedik. Eğer, combobox'da seçili değer 3. index'e eşit ise yeni bir pencere aç. Bakın 3. index diyorum. 3. değer demiyorum. Burası önemli gençler.
Küme parantezlerinin içine girdik. Orada, pencereler arası geçiş yapacağımız için nesneye ihtiyacımız var. Bir nesne yarattık. Nesneyle mavi adlı penceremizi bağladık. Nesnemizin adı goster. goster. Show dedik. Show göstermek, sunmak anlamına gelir.

Bu kadar. Bu kodları diğer ıtemlere de uygulayın o iş sizin artık. Şimdi gelelim diğer penceremize. Mavi penceremizi açıyoruz. Basit bir hesap makinesi yaratacağız. Size hesap makinesi yapmayı diğer yayınlarımda öğretmiştim. 




Alın basit hesap makinesi. Bunu anlatmama gerek yok. Kodlarını da yazmayacağım. Sadece mantık şöyleydi, textboxlara sayı girilecek buttonların altındaki işlemler yaptırılacak. Bu kadar. Sonuc label'da görüntülenecek.


Veee programımızı çalıştıralım. Yalnız, programı mainwindow.xaml de çalıştıracaksınız. mavi.xaml de çalıştırırsanız sadece mavi pencere açılır, programınızın bir özelliği kalmaz canlarım.






Alınız programın son hali. Bu arada, seçiniz yazısını boşuna yazmadık. Normalde program çalışınca seçiniz yazısı görünür olmaz. Çünkü combobox kontrolü selectedindex bölümünde -1. index'e ayarlıdır. Bizim seçiniz yazımız kaçıncı indexte idi ? 0. indexte. O yüzden, combobox kontrolüne tıklıyoruz, properties'den selectedindex yerinin yanında yazılan -1'i siliyoruz 0 yazıyoruz. O anda seçiniz yazısı görünür hale geliyor. Evet bu kadar :)


Çok karışık gibi dursada çok çok kolay bir program. Sadece belirli noktaları bilmekte fayda var. Umarım bir faydam dokunmuştur. İyi günler dilerim :)))))

Bu blogdaki popüler yayınlar

VB.NET'TE VERİTABANI İŞLEMLERİ

C# - WPF APPLICATION - LISTBOX KULLANIMI

VB.NET'TE VERİTABANINA KAYIT EKLEME İŞLEMİ