Databasede kişiler tablom var b tabloda kişinin adı,soyadı,adresi,e-posta, telefon bilgileri var. Uyeleri DropdownList'e çektim adları ve soyadları dropdownlistte sıralanıyor. dropdownList'e seçili Kişinin Alt satırlarda bulunan İlgili textboxlara diğer bilgilerinin gelmesinin istiyorum. Yani Ali seçili ise adres textboxına alinin adresi e-posta textboxına alinin e-postası gelsin kişi seçildiği anda gelecek. yardım ederseniz çok sevinirim şimdiden teşekkürler.
tablo kişi olduğundan dolayı GridView kullanmanı öneririm dropdownlist'e göre . Ama illa onu kullancam diyorsan dropdownliste yerleştirirken adı ve ID sine göre yerleştirmelisin. Yani text ve value kısmına bunlar gelmeli. Daha sonra bu dropdownlistin "SelectedIndexChanged" içinde selected olan item'n ID sini alıp yeniden sorguyla o kişiyi dondurup, gelen değerleri textboxtlara yazcaksın.
Bunları yaptım sorun o kişiyi dondurup, gelen değerleri textboxtlara yazdırmak bunu nasıl yapacağımı tam olarak bilmiyorum.
Sorgunu datareaderi ile çekeceksin, sonrasında ise while(dr.read()) { textbox.text = dr["yas"]; . . . . } tarzında yapacaksın. Yapamazsan tam kodu gönderirim.
rintintinnR
kullanıcısına yanıt
Nereye kadarlık kısma geldin onuda paylaşırmısın. Mesala dropdownlisti doldurabildinmi ? Doldursayan içinde isim ve ID tuttunmu
Dropdownlist'i doldurdum ıd ve isim tuttu. uyenin databasede kayıtlı olan bilgilerini textboxlara dolduramıyorum.
var Uyeler = (from u in db.Uye where u.IsActive == true && u.IsDelete == false && u.Durum == 1 orderby u.UyeAdi ascending select new { UyeAdi = u.UyeAdi + " " + u.UyeSoyadi, UyeId = u.UyeId }).ToList(); DDL_Uyeler.DataSource = Uyeler; DDL_Uyeler.DataBind();
buradan sonrasını getiremiyorum
tamam bundan sonra o dropdown 'ın properties larından "SelectedIndexChanged" içine girceksin yani o fonksiyonu oluşturcaksın.(şimsekk gibi olandan) Burda söylemek istediğim her sen dropdownda değer degiştirdignde burası tetiklencek.(Autopostback true yapmayı unutma)
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { string deneme= DropDownList1.SelectedItem.Value; //artık elinde seçtiğin kişinin id'si var. //burda yeniden select sorgusu yaparak o kişi getirmen lazım. (select * from db.Uye where id=deneme gibi bir sorgu) // almak istediğin değerleri yukarda yaptığın gibi alacaksın tek tek TextBox1.Text = u.Uyeadi; //başka textbox ların varsa devamını buraya yazarsın. }
Dropdown 'un SelectedIndexChanged event'nin içine yazacaksın.Dropdown' un Autopostback 'ıni true yapmalısın. Benim örnek kodum aşağıda kendine göre uyarlarsın. Entity ile de kurabilirsin sorguyu. Dikktan etmen gereken kısım, dropdown'u doldururken Page_load() kısımına !Ispostback yazmalısın aksi halde selecteditemvalue değerin aynı kalır.
if (!IsPostBack) { BindDropDown(); }
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { OleDbConnection connection; connection = new OleDbConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["xls"].ConnectionString); connection.Open(); OleDbCommand command = new OleDbCommand("SELECT * FROM [TABLE1$] WHERE ID = " + DropDownList1.SelectedValue + "", connection); OleDbDataReader dr = command.ExecuteReader();