Mise à jour d'une dropdownList par une autre
Bonjour,
voici mon problème :
j'ai deux DDL contenant des couleurs, j'ai une BDD qui associer deux couleurs entre-elles. je veux que quand l'on selectionne une elle selection dans l'autre DDL la couleur associé, mon code et mes requettes marches, c'est la mise à jour qui ne marche pas
pourl'instant j'ai codé uniquement la DDL1 change la DDL2
je vous remercie d'avance
voici mon code
aspx :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| <asp:Content ID="ContenuAjouterBrique" ContentPlaceHolderID="Contenu" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<p><asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"
RenderMode="Inline">
<ContentTemplate>
<asp:Label ID="LabelCouleurLego" runat="server" Text="Couleur Référence Lego : "></asp:Label>
<asp:DropDownList ID="DropDownListCouleurLego" runat="server" OnSelectedIndexChanged ="DropDownListCouleurLego_SelectedIndexChanged"></asp:DropDownList>
</ContentTemplate>
</asp:UpdatePanel>
</p>
<p><asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional"
RenderMode="Inline">
<ContentTemplate>
<asp:Label ID="LabelCouleurPeeron" runat="server" Text="Couleur Référence Peeron : "></asp:Label><asp:DropDownList ID="DropDownListCouleurPeeron" runat="server" AutoPostBack="False"></asp:DropDownList>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="DropDownListCouleurLego"
EventName="SelectedIndexChanged" />
</Triggers>
</asp:UpdatePanel></p>
</asp:Content> |
et voici mon code vb :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
|
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
DropDownListCouleurLego.Items.Clear()
DropDownListCouleurPeeron.Items.Clear()
Dim ConnectionDB As MySqlConnection = New MySqlConnection(StringDB)
Try
ConnectionDB.Open()
Dim requetteCouleurLego As String = "SELECT couleur_lego FROM couleur_lego"
Dim requetteur As MySqlCommand = New MySqlCommand(requetteCouleurLego, ConnectionDB)
Dim ResultatRequette As MySqlDataReader = requetteur.ExecuteReader()
While ResultatRequette.Read() = True
DropDownListCouleurLego.Items.Add(ResultatRequette.GetString(0))
End While
ResultatRequette.Close()
Dim requetteCouleurPeeron As String = "SELECT couleur_peeron FROM couleur_peeron"
requetteur = New MySqlCommand(requetteCouleurPeeron, ConnectionDB)
ResultatRequette = requetteur.ExecuteReader()
While ResultatRequette.Read() = True
DropDownListCouleurPeeron.Items.Add(ResultatRequette.GetString(0))
End While
requetteur.Dispose()
ConnectionDB.Close()
Catch ex As MySqlException
End Try
ConnectionDB.Dispose()
AssocierDropDownListCouleurLegoPeeron()
End Sub
Protected Sub ButtonPreVisualisationImage_Click(ByVal sender As Object, ByVal e As EventArgs) Handles ButtonPreVisualisationImage.Click
FileUploadImage.SaveAs(Server.MapPath("./images_temp/" & TextBoxRefLego.Text & ".jpg"))
ImagePrevi.ImageUrl = "~/images_temp/" & TextBoxRefLego.Text & ".jpg"
End Sub
Protected Sub DropDownListCouleurLego_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles DropDownListCouleurLego.SelectedIndexChanged
AssocierDropDownListCouleurLegoPeeron()
UpdatePanel2.Update()
End Sub
Private Sub AssocierDropDownListCouleurLegoPeeron()
Dim ConnectionDB As MySqlConnection = New MySqlConnection(StringDB)
Try
ConnectionDB.Open()
Dim requetteIdCouleurLego As String = "SELECT id_couleur_lego FROM couleur_lego WHERE couleur_lego='" & DropDownListCouleurLego.SelectedItem.Text & "'"
Dim requetteur As MySqlCommand = New MySqlCommand(requetteIdCouleurLego, ConnectionDB)
Dim ResultatRequette As MySqlDataReader = requetteur.ExecuteReader()
ResultatRequette.Read()
Dim id_couleur_lego As Integer = ResultatRequette.GetInt32(0)
ResultatRequette.Close()
Dim requetteAssociationCouleur As String = "SELECT id_couleur_peeron FROM associer_clego_cpeeron WHERE id_couleur_lego='" & id_couleur_lego & "'"
requetteur = New MySqlCommand(requetteAssociationCouleur, ConnectionDB)
ResultatRequette = requetteur.ExecuteReader()
ResultatRequette.Read()
Dim id_couleur_peeron As Integer = ResultatRequette.GetInt32(0)
ResultatRequette.Close()
Dim requetteNomCouleurPeeron As String = "SELECT couleur_peeron FROM couleur_peeron WHERE id_couleur_peeron='" & id_couleur_peeron & "'"
requetteur = New MySqlCommand(requetteNomCouleurPeeron, ConnectionDB)
ResultatRequette = requetteur.ExecuteReader()
ResultatRequette.Read()
Dim trouver As Boolean = False
Dim indexItemListePeeron As Integer = 0
While trouver = False
If DropDownListCouleurPeeron.Items(indexItemListePeeron).Text = ResultatRequette.GetString(0) Then
trouver = True
Else
indexItemListePeeron = indexItemListePeeron + 1
End If
End While
DropDownListCouleurPeeron.SelectedIndex = indexItemListePeeron
ResultatRequette.Close()
ConnectionDB.Close()
Catch ex As MySqlException
End Try
ConnectionDB.Dispose()
End Sub |