• 23-11-2012, 03:16:23
    #1
    merhaba arkadaşlar 3 farklı combobox'um var 1. si gün 2. si ay 3.süde yıl olmak üzere. Bunları doğum tarihi olarak kullanmak istiyorum fakat aylardan şubat seçildiğinde günün yıla bağlı olarak 28 yada 29 olmasını istiyorum bunun kolay bir yolu varmı yoksa if' ile yılın 4 ile modunu alıp kalan 0 ise gün sayısını 28 olarakmı belirlemeliyim.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 03:16:23 -->-> Daha önceki mesaj 02:39:18 --

    private void mudurEkle(object sender, MouseButtonEventArgs e)
    {


    dogumYili.Items.Clear();
    for (int a = 1920; a <= 1992; a++) dogumYili.Items.Add(a);

    }

    arkadaşlar birde yukarıdaki kod bloğunu kullandığımda butona ilk basışımda combonun içini dolduruyor fakat 2. defa bastığımda program donuyor nerede yanlış yapıyorum çıkartamadım
  • 23-11-2012, 15:24:05
    #2
    burakoral adlı üyeden alıntı: mesajı görüntüle
    merhaba arkadaşlar 3 farklı combobox'um var 1. si gün 2. si ay 3.süde yıl olmak üzere. Bunları doğum tarihi olarak kullanmak istiyorum fakat aylardan şubat seçildiğinde günün yıla bağlı olarak 28 yada 29 olmasını istiyorum bunun kolay bir yolu varmı yoksa if' ile yılın 4 ile modunu alıp kalan 0 ise gün sayısını 28 olarakmı belirlemeliyim.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 03:16:23 -->-> Daha önceki mesaj 02:39:18 --

    private void mudurEkle(object sender, MouseButtonEventArgs e)
    {


    dogumYili.Items.Clear();
    for (int a = 1920; a <= 1992; a++) dogumYili.Items.Add(a);

    }

    arkadaşlar birde yukarıdaki kod bloğunu kullandığımda butona ilk basışımda combonun içini dolduruyor fakat 2. defa bastığımda program donuyor nerede yanlış yapıyorum çıkartamadım
    Çok yanlış kullanıyorsun.. Böylede yapabilirsin ama sırf kod israfı olur. datetimepicker'i kullan.. İstediğin işin üstüsinden gelecektir.
  • 23-11-2012, 15:57:11
    #3
    aTKn94 adlı üyeden alıntı: mesajı görüntüle
    Çok yanlış kullanıyorsun.. Böylede yapabilirsin ama sırf kod israfı olur. datetimepicker'i kullan.. İstediğin işin üstüsinden gelecektir.
    datetimepcickerı takvim gibi değilde combobox olarak kullanabilme imkanım varmı ?
  • 23-11-2012, 16:08:44
    #4
    burakoral adlı üyeden alıntı: mesajı görüntüle
    datetimepcickerı takvim gibi değilde combobox olarak kullanabilme imkanım varmı ?
    sen combobox'dan 3 tane ekliyorsun.. datetimepicker'De ise bir tane combobox var gibi seçiyorsun.. zaten combobox'a benziyor.. sadece kod kullanımı daha kolay.. tek tek combobox'larla uğraşırsan işiniz içinden çıkamassın
  • 23-11-2012, 17:35:02
    #5
    aTKn94 adlı üyeden alıntı: mesajı görüntüle
    sen combobox'dan 3 tane ekliyorsun.. datetimepicker'De ise bir tane combobox var gibi seçiyorsun.. zaten combobox'a benziyor.. sadece kod kullanımı daha kolay.. tek tek combobox'larla uğraşırsan işiniz içinden çıkamassın
    DateTimePicker kullanmak istemiyorum çünkü mesela 1985 yılına gitmek için çok çaba sarf etmek gerekiyor ona bir çözümün varmı? Kullanıcı 1990 yılınıde seçebilir 1960 da ?


    Sorunu çözdüm işinize yarayabilir.
    private void button1_Click(object sender, EventArgs e)
            {
                comboBox1.Items.Clear();
                for (int i = 1920; i<=1980; i++) comboBox1.Items.Add(i);
                for (int x = 1; x <= 12; x++) comboBox2.Items.Add(x);
                for (int y = 1; y <= 31; y++) comboBox3.Items.Add(y);
                comboBox1.SelectedIndex = 0;
                comboBox2.SelectedIndex = 0;
                comboBox3.SelectedIndex = 0;
            }
    
            private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
            {
                int gun = DateTime.DaysInMonth((int)comboBox1.SelectedItem,(int) comboBox2.SelectedItem);
                MessageBox.Show(gun.ToString());
                comboBox3.Items.Clear();
                for (int say = 1; say <= gun; say++) comboBox3.Items.Add(say);
            }
    windows form uygulamasında çalışan bu örnek her ne hikmetse wpf'de çalışmıyor winform'da SelectedIndexChanged olan event wpf'de SelectionChanged diye geçiyor ama hatalı çalışıyor
  • 23-11-2012, 18:07:04
    #6
    burakoral adlı üyeden alıntı: mesajı görüntüle
    DateTimePicker kullanmak istemiyorum çünkü mesela 1985 yılına gitmek için çok çaba sarf etmek gerekiyor ona bir çözümün varmı? Kullanıcı 1990 yılınıde seçebilir 1960 da ?


    Sorunu çözdüm işinize yarayabilir.
    private void button1_Click(object sender, EventArgs e)
            {
                comboBox1.Items.Clear();
                for (int i = 1920; i<=1980; i++) comboBox1.Items.Add(i);
                for (int x = 1; x <= 12; x++) comboBox2.Items.Add(x);
                for (int y = 1; y <= 31; y++) comboBox3.Items.Add(y);
                comboBox1.SelectedIndex = 0;
                comboBox2.SelectedIndex = 0;
                comboBox3.SelectedIndex = 0;
            }
    
            private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
            {
                int gun = DateTime.DaysInMonth((int)comboBox1.SelectedItem,(int) comboBox2.SelectedItem);
                MessageBox.Show(gun.ToString());
                comboBox3.Items.Clear();
                for (int say = 1; say <= gun; say++) comboBox3.Items.Add(say);
            }
    Halletiğine sevindim