2009-12-22 53 views
0

如何从DropDownList_SelectedIndexChanged事件中的列表视图中的下拉列表中获取所选值? 我一直有问题,在页面中找到控制:-)获取位于列表视图中的下拉列表的选定值

foreach (ListViewItem item in CouncilListView.Items) 
    { 
     CouncilIdLabel = (Label)item.FindControl("CouncilIdLabel"); 
    } 

它只是通过所有的项目,我不知道如何摆脱在foreach时达到想要的控制。

<asp:DropDownList runat='server' id='ddl1' OnSelectedIndexChange='dropdownlist_selectedindexchange' /> 

那么所有你需要做的是:如果你是从你的列表视图的模板标记,像这样内注册事件

string look_for = "bbb"; 
ArrayList names = new ArrayList(); 
names.Add("aaa"); 
names.Add("bbb"); 
names.Add("ccc"); 

foreach (string name in names) 
{ 
if (look_for == name) 
{ 
break; 
} 
} 
+0

这是windows还是web? – hunter 2009-12-22 21:25:05

+0

asp.net 3.5更好是c#:-) – Mahdi 2009-12-22 21:29:42

回答

0

就可以退出foreach循环:

protected void dropdownlist_selectedindexchange(Object sender, EventArgs e){ 
    DropDownList ddl1 = (sender as DropDownList); 
    String value = ddl1.SelectedValue; 
} 
4

+0

我怎样才能访问此事件中的其他控件? – Mahdi 2009-12-22 21:48:07

+0

非常粗略地说,你可以按照'Control c =(ddl1.NamingContainer as ListView).FindControl(“myControlId”);'的方式做一些事情。这假定他们有相同的命名容器(如父母)。您可能还需要执行谷歌搜索“FindControl递归”。 – 2009-12-22 21:53:11