IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Lier deux controles serveur en ASP.NET


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 187
    Par défaut Lier deux controles serveur en ASP.NET
    Bonjour,

    J'ai crée dans mon appllication deux liste déroulantes une pour les régions et autre pour les villes. Je sais pas comment paramétrer les deux DropDownList pour que je puisse changer la région et les villes associes s'affichent dans la liste déroulante des villes.

    Merci de me bien fournir d'aide .

  2. #2
    Membre Expert
    Inscrit en
    Mai 2006
    Messages
    1 364
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1 364
    Par défaut
    Si tu utilises l'ajax toolkit :
    http://www.asp.net/ajax/ajaxcontrolt...gDropDown.aspx

    Sinon, si tu fais tout à la main, tu peux generer un postback sur changement du dropdowList region et mettre à jour la datasource de l'autre dropdowList en fonction du choix de l'utilisateur.
    Pour qu'une dropdowList genere un postback, il faut :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ddl.AutoPostBack = true;
    ddl.SelectedIndexChanged += maMethode;
    a+

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 187
    Par défaut
    Bonjour,

    Je vous remercie pour la réponse, mais je suis juste un débutant j'aimerais que tu m'explique plus je travail pas avec ajax je veux faire a la main [code ASPX] sachant que la liste des régions a comme source de données une table de la base de donnee [Region] et la deuxième relié a une table de la même base [Ville]

    merci d'avance.

  4. #4
    Rédacteur

    Avatar de Jean-Michel Ormes
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    1 838
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 838
    Par défaut
    Bonjour,

    En fait, il faut que tu rajoutes dans la page aspx sur ta ddlRegion:

    Code aspx
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AutoPostBack="true" OnSelectedIndexChanged="ddlRegion_SelectedIndexChanged"
    ça te permet de gérer le changement de région.

    Dans ton code behind, tu recharges ta ddlVille en passant en paramètre la région choisie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    protected void ddlRegion_SelectedIndexChanged(object sender, EventArgs e)
    {
       // Requête avec pour paramètre ta région
     
       ddlVille.DataBind();
    }

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 187
    Par défaut
    Bonjour,

    J'ai essayé et ca marche plus encore, déjà les deux listes déroulante sans inclut dans un FromView qui est relié a une table de base de donnée, et j'ai changé les TextBox par les listes déroulantes en modifiant InsertTemplate et j'ai crée pour chaqu'une un source de donnée, il me reste juste la liaison entre les deux Ddl.

    Merci de m'aider plus .

  6. #6
    Membre émérite Avatar de Ramajb
    Homme Profil pro
    ----------------------------
    Inscrit en
    Septembre 2007
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ----------------------------

    Informations forums :
    Inscription : Septembre 2007
    Messages : 476
    Par défaut
    Pourrais tu nous montrer ton code?

    Merci.

  7. #7
    Rédacteur

    Avatar de Jean-Michel Ormes
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    1 838
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 838
    Par défaut
    Tu as essayé quoi? Qu'est-ce qui ne marche plus? Tu as passer en paramètre ta région dans la source de données qui remplit ton ddlVille ? Tu peux nous montrer un peu de code ?

  8. #8
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 187
    Par défaut
    Bonjour,

    Voila le code ASPX
    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
    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
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
     
     
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
            ConnectionString="<%$ ConnectionStrings:basedossierConnectionString %>" 
             InsertCommand="INSERT INTO dossier(num_dossier, num_envoi_commune, num_arrivee_agence, date_arrivee_agence, observation, petitionaire, date_envoi_commun, idautre_avis, date_envoi_agance, num_envoi_agence, id_commune, code_projet, reference_fonciere, id_Archetecte, id_topographe) VALUES (@num_dossier, @num_envoi_commune, @num_arrivee_agence, @date_arrivee_agence, @observation, @petitionaire, @date_envoi_commun, @idautre_avis, @date_envoi_agance, @num_envoi_agence, @id_commune, @code_projet, @reference_fonciere, @id_Archetecte, @id_topographe)" 
     
     
            SelectCommand="SELECT * FROM [dossier]" 
     
            ProviderName="<%$ ConnectionStrings:basedossierConnectionString.ProviderName %>">
            <InsertParameters>
                <asp:Parameter Name="num_dossier" />
                <asp:Parameter Name="num_envoi_commune" />
                <asp:Parameter Name="num_arrivee_agence" />
                <asp:Parameter Name="date_arrivee_agence" />
                <asp:Parameter Name="observation" />
                <asp:Parameter Name="petitionaire" />
                <asp:Parameter Name="date_envoi_commun" />
                <asp:Parameter Name="idautre_avis" />
                <asp:Parameter Name="date_envoi_agance" />
                <asp:Parameter Name="num_envoi_agence" />
                <asp:Parameter Name="id_commune" />
                <asp:Parameter Name="code_projet" />
                <asp:Parameter Name="reference_fonciere" />
                <asp:Parameter Name="id_Archetecte" />
                <asp:Parameter Name="id_topographe" />
            </InsertParameters>
     
        </asp:SqlDataSource>
        <asp:TextBox ID="date" runat="server" AutoCompleteType="HomeState"></asp:TextBox>
        <asp:FormView ID="FormView1" runat="server" DataKeyNames="num_dossier" 
            DataSourceID="SqlDataSource1" DefaultMode="Insert" 
     
            style="margin-right: 0px; position: relative; top: -28px; left: 218px; height: 345px; margin-left: 28px;" 
            Width="573px" CellPadding="4" ForeColor="#333333">
     
            <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
            <RowStyle BackColor="#FFFBD6" ForeColor="#333333" />
     
            <InsertItemTemplate>
            <table>
     
               <tr><td>    
                Province:
                </td><td>
                <asp:DropDownList ID="ProvinceDownList" runat="server"  
                           DataSourceID="ProvinceSqlDataSource" DataTextField="nom_province" 
                           DataValueField="id_province" AutoPostBack="True" 
                           onselectedindexchanged="ProvinceDownList_SelectedIndexChanged" >
     
                </asp:DropDownList>
                       <asp:SqlDataSource ID="ProvinceSqlDataSource" runat="server" 
                           ConnectionString="<%$ ConnectionStrings:basedossierConnectionString %>" 
                           SelectCommand="SELECT * FROM [province] WHERE ([id_region] = @id_region)">
                           <SelectParameters>
                               <asp:ControlParameter ControlID="RegionList" Name="id_region" 
                                   PropertyName="SelectedValue" Type="Int32" />
                           </SelectParameters>
                       </asp:SqlDataSource>
                </td></tr>
     
               <tr><td>    
                Region:
                </td><td>
                <asp:DropDownList ID="RegionList" runat="server" AutoPostBack="True" 
                           DataSourceID="RegionSqlDataSource" DataTextField="nom_region" 
                           DataValueField="id_region"   >
     
                </asp:DropDownList>
                       <asp:SqlDataSource ID="RegionSqlDataSource" runat="server" 
                           ConnectionString="<%$ ConnectionStrings:basedossierConnectionString %>" 
                           SelectCommand="SELECT * FROM [region]"></asp:SqlDataSource>
                </td></tr>
     
               <tr><td>    
                Commune:
                </td><td>
                <asp:DropDownList ID="DropDownList1" runat="server" 
                           DataSourceID="CommuneSqlDataSource"
                            DataTextField="nom_commune" DataValueField="id_commune">
                </asp:DropDownList>
                <asp:SqlDataSource ID="CommuneSqlDataSource" runat="server" 
                    ConnectionString="<%$ ConnectionStrings:basedossierConnectionString %>" 
                    SelectCommand="SELECT * FROM [commune] WHERE ([id_province] = @id_province)">
                    <SelectParameters>
                        <asp:ControlParameter ControlID="ProvinceDownList" Name="id_province" 
                            PropertyName="SelectedValue" Type="String" />
                    </SelectParameters>
                       </asp:SqlDataSource>
                </td></tr></table>
     </InsertItemTemplate>
    </asp:FormView>  
        </asp:Content>
    et pas de code behind

Discussions similaires

  1. Controls de connexion ASP.NET
    Par medaadi dans le forum ASP.NET
    Réponses: 6
    Dernier message: 17/11/2009, 09h12
  2. [Article] Création de contrôles serveurs en ASP.Net
    Par Louis-Guillaume Morand dans le forum ASP.NET
    Réponses: 0
    Dernier message: 21/02/2009, 09h24
  3. Réponses: 8
    Dernier message: 06/02/2009, 17h29
  4. Réponses: 2
    Dernier message: 18/04/2007, 15h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo