17 messaggi dal 15 marzo 2007
Salve a tutti ...
ho questo tipo di problema sicuramente per molti abbastanza semplice:

Ho due dropdownlist classiche con province e comuni:

<asp:UpdatePanel ID="IPL_comuni" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<td>Città</td>
<td>
<asp:DropDownList ID="TXTcitta" runat="server" DataSourceID="SQLprovince"
DataTextField="Provincia" DataValueField="id_provincia"
AppendDataBoundItems="True" AutoPostBack="true" OnSelectedIndexChanged="TXTcitta_SelectedIndexChanged">
<asp:ListItem Value=""> - </asp:ListItem>
</asp:DropDownList>
<asp:SqlDataSource ID="SQLprovince" runat="server"
ConnectionString="<%$ConnectionStrings:connessione %>"
SelectCommand="SELECT * FROM province"
></asp:SqlDataSource>
<asp:RequiredFieldValidator ID="RFV_TXTcitta" ControlToValidate="TXTcitta" Text="* Campo obbligatorio" runat="server"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td>PROV</td>
<td>
<asp:DropDownList ID="TXTprov" runat="server">
<asp:ListItem Value=""> - </asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFV_TXTprov" ControlToValidate="TXTprov" Text="* Campo obbligatorio" runat="server"></asp:RequiredFieldValidator>
</td>
</tr>
</ContentTemplate>
</asp:UpdatePanel>


e la mia Sub che genera i comuni alla selezione di una provincia:

Protected Sub TXTcitta_SelectedIndexChanged()
Dim ConnStr As String = WebConfigurationManager.ConnectionStrings("connessione").ToString
Dim Conn As New SqlConnection(ConnStr)
Conn.Open()

Dim id_provincia As Integer
id_provincia = TXTcitta.Text
Dim MYSQL As String
Dim MYCMD As SqlCommand

MYSQL = "SELECT * FROM comuni WHERE id_provincia= @id_provincia"
MYCMD = New SqlCommand(MYSQL, Conn)
MYCMD.Parameters.Add("id_provincia", SqlDbType.Int).Value = id_provincia
Dim reader As SqlDataReader = MYCMD.ExecuteReader()

If reader.HasRows Then
While reader.Read()
TXTprov.Items.Add(New ListItem(reader.Item("comune")))
End While
End If

reader.Close()
Conn.Close()


End Sub

Funziona tutto solo che una volta seleziona un comune e poi una provincia, se voglio cambiare provincia, la lista dei comuni resta la stessa.

cosa ho dimenticato?

grazie...
Modificato da lukaone il 28 febbraio 2011 18.43 -
Così a naso credo che tu abbia dimenticato di svuotare la lista dei comuni con un
TXTprov.Items.Clear()


In ogni modo, invece che riempire tutto a mano, ti consiglierei di usare il databinding
TXTprov.DataSource = reader
TXTprov.DataBind()


A presto,
Marco

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.