Ciao.
Vi chiedo un aiuto a ragionare su questa GridView che deve popolarsi a secondo dei filtri applicati in delle DropDownList.
Le query condizionate funzionano, ma ho un problema perchè a secondo della DDL selezionata devo resettare le altre DDL e cioè:
[list=1][*]Se DDL1 è diversa da 0: reset su DDL3, 4 e 5;[*]Se DDL1+DDL2 sono diverse da 0: reset DDL3, 4 e 5;[*]Se DDL4 è diversa da 0: reset DDL3, 1 e 2;[*]Se DDL4+DDL5 sono diverse da 0: reset DDL3, 1 e 2;[*]Se DDL3 è diversa da 0: reset su DDL1, 2, 4 e 5;[/list=1]
Ho costruito questo codice, ma se provo a selezionare un valore da DDL3 quando DDL1 è selezionata, DDL1 non si azzera e DDL3 non rimane selezionata, perchè?
Grazie
codice:public void GridViewBind() { if (DropDownList1.SelectedIndex != 0 && DropDownList2.SelectedIndex != 0) { sql1 = "select ... ;"; a = "condizione 1+2 <> null"; } else if (DropDownList1.SelectedIndex != 0) { sql1 = "select ...;"; DropDownList3.SelectedIndex = -1; a = "condizione 1 <> null"; } else { sql1 = "SELECT ... ;"; a = "condizione tutto null"; } if (DropDownList4.SelectedIndex != 0 && DropDownList5.SelectedIndex != 0) { sql1 = "select ...;"; a = "condizione 4+5 <> null"; } else if (DropDownList4.SelectedIndex != 0) { sql1 = "select ... ;"; DropDownList3.SelectedIndex = -1; DropDownList1.SelectedIndex = -1; DropDownList2.SelectedIndex = -1; a = "condizione 4 <> null"; } if (DropDownList3.SelectedIndex != 0) { sql1 = "SELECT ... ;"; DropDownList1.SelectedIndex = -1; DropDownList2.SelectedIndex = -1; DropDownList4.SelectedIndex = -1; DropDownList5.SelectedIndex = -1; a = "condizione 3 <> null"; } dadapter = new SqlDataAdapter(sql1, ConnSqlServer); dset = new DataSet(); dset.Clear(); dadapter.Fill(dset); GridView1.DataSource = dset.Tables[0]; GridView1.DataBind(); Response.Write(a + " " + sql1 + " "); }