2013-04-23 91 views
0

我想在用戶從下拉列表中選擇一個值時自動點擊搜索按鈕。Dropdownlist SelectedIndexChanged不在aspx頁面上觸發

代碼片段:

添加在InitializeComponent()事件處理程序:

this.ddltrim.SelectedIndexChanged += new  System.EventHandler(this.ddltrim_SelectedIndexChanged); 

代碼:

private void ddltrim_SelectedIndexChanged(object sender, System.EventArgs e) 
      { 
     if(ddlStores.Items.Count ==1) 
      btnSearch_Click("Search", null); 
    } 

在設計師

<asp:dropdownlist id=ddltrim width="100%" Runat="server" AutoPostBack="True" EnableViewState="True">  
<asp:ListItem Value="Select Submodel" Selected="True"> 
     Select SubModel 
     </asp:ListItem></asp:dropdownlist> 

但selectIndexChanged我當我從ddl中選擇任何值時不會觸發。必須手動點擊按鈕搜索。

+0

能否請你嘗試結合在Page_Init或Page_Load中的SelectedIndexChange事件? – 2013-04-23 13:25:00

+0

我已經添加了page_load但沒有工作。 – Maybe2013 2013-04-23 13:57:15

回答

0

嘗試

<asp:dropdownlist id=ddltrim width="100%" Runat="server" AutoPostBack="True" EnableViewState="True" onselectedindexchanged="ddltrim_SelectedIndexChanged"> 
<asp:ListItem Value="Select Submodel" Selected="True">Select SubModel</asp:ListItem> 
+0

謝謝,但我已經添加selectedindexchanged從後面的代碼。 – Maybe2013 2013-04-23 13:17:18

+0

我看到了,但是爲什麼你從後面的代碼中添加它,因爲你只添加一次,然後你也可以在設計器中將其添加爲靜態的 – Solaflex 2013-04-23 13:22:33

+0

ok。實際上應用程序在.net 1.1中,並且它的auto在後面添加了selectIndexChanged代碼。我會工作你的方式然後 – Maybe2013 2013-04-23 13:30:12

0

嘗試設置您的加載事件代碼Page_PreInit方法

protected void Page_PreInit(object sender, EventArgs e) 
{ 
    this.ddltrim.SelectedIndexChanged += new System.EventHandler(this.ddltrim_SelectedIndexChanged); 
} 
+0

嘗試過,但仍然無法正常工作。但是當我手動點擊搜索按鈕時,它首先進入ddltrim_SelectedIndexChanged函數。這樣對嗎? – Maybe2013 2013-04-23 13:50:26

相關問題