Çözüldü C# ASP.NET DropDownList problemi

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

cagriisik

Hectopat
Katılım
12 Mayıs 2020
Mesajlar
345
Arkadaşlar merhaba. Ben şöyle bir proje yapmaya çalışıyorum: 2 tane ülke olacak. Bu iki ülkeden birine tıkladığımda, o ülkenin illerini seçebileceğim ve o ilin ilçesini de seçeceğim. Fakat denediğimde 2 ülke ekledim ve Türkiye olarak listelediğimde düzgün bir şekilde sonuç alıyorum. Almanya'yı seçtiğimdeyse ilçe kısmında herhangi bir şey gözükmüyor. Ekteki ilgili fotoğrafları incelemenizi rica ediyorum. Yardımcı olursanız çok sevinirim.
 

Dosya Ekleri

  • r2.png
    6,4 KB · Görüntüleme: 30
  • r1.png
    7,9 KB · Görüntüleme: 22
  • command.png
    83,4 KB · Görüntüleme: 26
Çözüm
Kullanmıyorum ya, teşekkür ederim Sorununuzu çözebildiniz mi bu şekilde?

Kod:
else if (ilDropDownList.SelectedIndex == 0 && ulkeDropDownList.SelectedIndex == 1) // il 0 yani Berlin, ülke 1 yani Almanya
{
    ilceDropDownList.Items.Add("Berlin İlçe 1");
    ilceDropDownList.Items.Add("Berlin İlçe 2");
}
else if (ilDropDownList.SelectedIndex == 1 && ulkeDropDownList.SelectedIndex == 1) // il 1 yani Köln, ülke 1 yani Almanya
{
    ilceDropDownList.Items.Add("Köln İlçe 1");
    ilceDropDownList.Items.Add("Köln İlçe 2");
}
Biraz öyle oldu hocam,
namespace WebApplication4
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
ulkeDropDownList.Items.Add("Türkiye");
ulkeDropDownList.Items.Add("Almanya");
}

}

protected void ulkeDropDownList_SelectedIndexChanged(object sender, EventArgs e)
{
ilDropDownList.Items.Clear();
ilceDropDownList.Items.Clear();
if (ulkeDropDownList.SelectedIndex == 0)
{
ilDropDownList.Items.Add("İstanbul");
ilDropDownList.Items.Add("Sakarya");

}
if (ulkeDropDownList.SelectedIndex == 1)
{
ilDropDownList.Items.Add("Berlin");
ilDropDownList.Items.Add("Köln");
}
}

protected void ilDropDownList_SelectedIndexChanged(object sender, EventArgs e)
{
ilceDropDownList.Items.Clear();

if (ilDropDownList.SelectedIndex == 0 && ulkeDropDownList.SelectedIndex == 0) // il 0 yani istanbul, ülke 0 yani türkiye
{
ilceDropDownList.Items.Add("Tuzla");
ilceDropDownList.Items.Add("Maltepe");

}
if (ilDropDownList.SelectedIndex == 1 && ulkeDropDownList.SelectedIndex==0 ) // il 1 yani sakarya, ülke 0 yani türkiye
{
ilceDropDownList.Items.Add("Serdivan");
ilceDropDownList.Items.Add("Karasu");
}
if (ilDropDownList.SelectedIndex == 2 && ulkeDropDownList.SelectedIndex == 1)// il 2 yani berlin, ülke 1 yani almanya
{
ilceDropDownList.Items.Add("berlinilce1");
ilceDropDownList.Items.Add("berlinilce2");
}
if (ilDropDownList.SelectedIndex == 3 && ulkeDropDownList.SelectedIndex == 1)// il 3 yani berlin, ülke 1 yani almanya
{
ilceDropDownList.Items.Add("kölnilce1");
ilceDropDownList.Items.Add("kölnilce2");
}
}
}
}
 
Kodu kod bloğu olarak atın birdahaki sefere.

Sorunun sebebi büyük ihtimalle yanlış index belirtmenizden kaynaklanıyor. Bakın tam şurada:
Kod:
if (ilDropDownList.SelectedIndex == 2 && ulkeDropDownList.SelectedIndex == 1)// il 2 yani berlin, ülke 1 yani almanya
{
ilceDropDownList.Items.Add("berlinilce1");
ilceDropDownList.Items.Add("berlinilce2");
}
if (ilDropDownList.SelectedIndex == 3 && ulkeDropDownList.SelectedIndex == 1)// il 3 yani berlin, ülke 1 yani almanya
{
ilceDropDownList.Items.Add("kölnilce1");
ilceDropDownList.Items.Add("kölnilce2");
}

ildeDropDownList'i şurada dolduruyorsunuz:

Kod:
if (ulkeDropDownList.SelectedIndex == 0)
{
ilDropDownList.Items.Add("İstanbul");
ilDropDownList.Items.Add("Sakarya");

}
if (ulkeDropDownList.SelectedIndex == 1)
{
ilDropDownList.Items.Add("Berlin");
ilDropDownList.Items.Add("Köln");
}
}
Siz burda diğer if in içine girdiniz diye index 2 - 3 diye devam etmeyecek. Berlin için de sıfırdan başlamanız lazım saymaya.

Dediğim gibi. Arada mola vermek iyidir. Yazılım dikkat işi bir tıkta, bol dikkatler .
 
Son düzenleme:
Kullanmıyorum ya, teşekkür ederim Sorununuzu çözebildiniz mi bu şekilde?

Kod:
else if (ilDropDownList.SelectedIndex == 0 && ulkeDropDownList.SelectedIndex == 1) // il 0 yani Berlin, ülke 1 yani Almanya
{
    ilceDropDownList.Items.Add("Berlin İlçe 1");
    ilceDropDownList.Items.Add("Berlin İlçe 2");
}
else if (ilDropDownList.SelectedIndex == 1 && ulkeDropDownList.SelectedIndex == 1) // il 1 yani Köln, ülke 1 yani Almanya
{
    ilceDropDownList.Items.Add("Köln İlçe 1");
    ilceDropDownList.Items.Add("Köln İlçe 2");
}
 
Çözüm
Düzeldi ama beynim durdu . Ben biraz kendim yorumlayayım. Çok teşekkür ederim bu saatte ilgilendiğiniz, vakit ayırdığınız için.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…