Bonjour,

J'ai un petit problème.

J'ai un tableau html rempli grâce a un datareader d'un requête sql. J'ai 4 ListBox et quand je sélectionnes une valeur sa fait un "filtre" de la requête sql.

Mais le truc c'est que quand je sélectionnes pour la première fois une valeur dans l'une de ces 4 listbox, les 4 évènements se déclenchent ... après il se déclenche un par un mais je comprends pas pourquoi la première fois il se déclenche tous :o

Je vous met du code pour voir si vous trouvez mon erreur :s

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 <table id="MonTableau" border="3" runat="server"></table>
    <div class="Div_Consultant">
        <span>Consultant:</span><br />
        <asp:ListBox id="lbconsultant" runat="server" Rows="1"
            Width="200px" DataSourceID="SqlDataSource1" DataTextField="LastName" 
            DataValueField="pk" AutoPostBack="True">
	    </asp:ListBox>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
            ConnectionString="<%$ ConnectionStrings:CONTRAT EUROPESQLConnectionString %>" 
            SelectCommand="SELECT [pk], [LastName] FROM [users]"></asp:SqlDataSource>
    </div>
    <div class="Div_Client">
        <span>Client:</span><br />
        <asp:ListBox id="lbclient" runat="server" Rows="1" Width="200px" 
            DataSourceID="SqlDataSource2" DataTextField="client" DataValueField="pk" AutoPostBack="True">
	    </asp:ListBox>
        <asp:SqlDataSource ID="SqlDataSource2" runat="server" 
            ConnectionString="<%$ ConnectionStrings:CONTRAT EUROPESQLConnectionString %>" 
            SelectCommand="SELECT [pk], [client] FROM [client]"></asp:SqlDataSource>
    </div>
    <div class="Div_Societe">
        <span>Société:</span><br />
        <asp:ListBox id="lbsociete" runat="server" Rows="1" Width="117px" AutoPostBack="True">
        <asp:ListItem value="1">CLAN PA</asp:ListItem>
        <asp:ListItem value="4">ESL EUROPE</asp:ListItem>
        <asp:ListItem value="2">ETI</asp:ListItem>
        <asp:ListItem value="5">GIS</asp:ListItem>
	    </asp:ListBox>
    </div>
    <div class="Div_Statut">
        <span>Statut:</span><br />
        <asp:ListBox id="lbstatut" runat="server" Rows="1" Width="97px" AutoPostBack="True">
        <asp:ListItem value="Sent">Sent</asp:ListItem>
        <asp:ListItem value="Accepted">Accepted</asp:ListItem>
        <asp:ListItem value="Refused">Refused</asp:ListItem>
        <asp:ListItem value="OnGoing">OnGoing</asp:ListItem>      
	    </asp:ListBox>
    </div>
Sa c'est les 4 listbox avec le tableau.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Protected Sub lbconsultant_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles lbconsultant.SelectedIndexChanged
        MonTableau.Rows.Clear()
        MsgBox("consultant")
        CreateTable("SELECT ID, [N°Offre], [Nom Offre], Consultant, Client, societe, [sent on], [date accord], statut FROM Commun_Offres WHERE ([N°Offre] IS NOT NULL AND Consultant = " & lbconsultant.SelectedValue & ")")
    End Sub
 
    Protected Sub lbclient_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles lbclient.SelectedIndexChanged
        MonTableau.Rows.Clear()
        MsgBox("client")
        'CreateTable("SELECT ID, [N°Offre], [Nom Offre], Consultant, Client, societe, [sent on], [date accord], statut FROM Commun_Offres WHERE ([N°Offre] IS NOT NULL AND Client = " & lbclient.SelectedValue & ")")
 
    End Sub
 
    Protected Sub lbsociete_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles lbsociete.SelectedIndexChanged
        MonTableau.Rows.Clear()
        MsgBox("societe")
        'CreateTable("SELECT ID, [N°Offre], [Nom Offre], Consultant, Client, societe, [sent on], [date accord], statut FROM Commun_Offres WHERE ([N°Offre] IS NOT NULL AND societe = " & lbsociete.SelectedValue & ")")
 
    End Sub
 
    Protected Sub lbstatut_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles lbstatut.SelectedIndexChanged
        MonTableau.Rows.Clear()
        MsgBox("statut")
        'CreateTable("SELECT ID, [N°Offre], [Nom Offre], Consultant, Client, societe, [sent on], [date accord], statut FROM Commun_Offres WHERE ([N°Offre] IS NOT NULL AND [sent on] = " & lbstatut.SelectedValue & ")")
 
    End Sub
et voila les 4 évènements, donc enfait la première fois que je sélectionnes une valeur bah j'ai les 4 msgsbox qui s'éxécute :/