J'ai l'emplacement DropdownList dans ma page maître. J'ai placé le contrôle dans ma page d'enfant qui prend des propriétés de la page principale. Maintenant, je cours une requêteObtenir des données de page enfant à partir de la page maître selectedItems
SELECT * FROM table where city like '"+city.text+"'
ici city.text obtient de la valeur de villes maître page sélectionnées. Mais mon problème est qu'il ne montre pas réellement les enregistrements selon city.text a des valeurs dedans. Il montre des enregistrements aléatoires.
Mon code
Maître page
<asp:DropDownList ID="locationSelector" runat="server" AutoPostBack="true">
<asp:ListItem Selected>Pune</asp:ListItem>
<asp:ListItem>Delhi</asp:ListItem>
<asp:ListItem>Chennai</asp:ListItem>
<asp:ListItem>Bangalore</asp:ListItem>
<asp:ListItem>Mumbai</asp:ListItem>
</asp:DropDownList>
page enfant Code VB
Dim location As DropDownList = Page.Master.FindControl("locationSelector")
city.Text = location.SelectedItem.ToString
If Not IsPostBack Then
Try
query = "SELECT * FROM hospitals where city like '" + city.Text + "'"
Dim cmd As New MySqlCommand(query, con)
cmd.CommandTimeout = 120
Dim da As New MySqlDataAdapter(cmd)
Dim table As New DataTable
da.Fill(table)
ViewState("Data") = table
hospitals.DataSource = table
hospitals.DataBind()
Catch ex As Exception
Response.Write(ex)
End Try
End If
MISE À JOUR
Protected Sub hospitals_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender
Dim location As DropDownList = Page.Master.FindControl("locationSelector")
city.Text = location.SelectedItem.ToString
End Sub
Parfois, il jette également une erreur TimeOut. Mais la plupart du temps Il obtient des résultats mais pas selon les éléments sélectionnés. Quelle sera l'autre solution pour cela?
quel type de contrôle est «hôpitaux» ??? –