2016-03-19 16 views
2

SelectedIndexChanged bir Web Forms uygulamasının arkasındaki koddan ayarlamaya çalışıyorum. Veritabanına sayfanın üzerine eklenen değişken bir açılır kapanır var ve açılır menülerden her biri değiştiğinde tetiklemek için bir yönteme ihtiyacım var. Şu anda çalışıyorASP.NET C# Set OnSelectedIndexContged from Code Behind

Im:

ddlProductCause.SelectedIndexChanged += new EventHandler(ddlProductCause_Changed); 
ddlProductCause.ID = "ddlProductCause_" + row["item_id"].ToString(); 
ddlProductCause.AutoPostBack = true; 

ve ...

public void ddlProductCause_Changed(object sender, CommandEventArgs e) 
    { 
     // do stuff 
    } 

Ama hiç şansım yok.

Herhangi bir fikrin var mı? Bu durumun neden olabileceği

+0

kullanılır? –

+0

Her bir düşüşü benzersiz bir kimlikle ayarlıyorum? – Adam92

+0

Lütfen "Page_Load' yöntem kodunu gönderin. –

cevap

4

Olay Argüman, kendi Dropdowns tüm abone musunuz EventArgs

protected void ddlProductCause_Changed(object sender, EventArgs e){ 
    //to get id 
    DropDownList ddl=sender as DropDownList; 
    //ddl.Id <---Access property like this. 
} 
+0

Brilliant, bu olayı tetikliyor, bu yöntemi tetikleyen açılır listenin kimliğini nasıl edinebilirim? yani << ddlProductCause.ID = "ddlProductCause_" + satır ["item_id"] ToString(); >> – Adam92

+0

bu, id satırının alınmasında başarısız görünüyor - nesne null olarak ayarlandı. – Adam92

+0

'ddl' nesnesi null? –