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

Windows Presentation Foundation Discussion :

UserControl qui s'adapte dynamiquement (ajout de Control) en fonction des boutons.


Sujet :

Windows Presentation Foundation

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 149
    Points : 46
    Points
    46
    Par défaut UserControl qui s'adapte dynamiquement (ajout de Control) en fonction des boutons.
    Salut a tous !


    Je cherche le meilleur moyen de faire mon programme. Je vous explique le principe :

    J'ai un UserControl HOME (qui corresponds a ma premiere page)
    Sur cet UserControl, j'ai un panel de bouton (Client, Entreprise, Liste de rendez vous etc etc)

    Ensuite jai un autre userControl, que j'appele CONTROL. Ou chaque bouton amènera sur cet UserControl.
    Mon UserControl se compose d'un tableau (liste) que je retrouverais partout, qui affiche soit la liste des rendez vous, soit la liste des entreprises, soit les clients etc... En fonction du bouton.
    Maintenant quand je clic sur le bouton Client, je veux que sur cet User, j'ai mon tableau, mais aussi une textBox NOM et une autre PRENOM.
    Et si maintenant je clic sur Entreprise, et bien j'ai toujours mon tableau (qui affiche cette fois ci les entreprise) mais le changement se fait au niveau des textbox aussi, je n'ai plus TextBoxPrenom, mais type.
    Pareil pour Rendez vous. Tableau qui affiche mes RDV, des textbox Nom, Prenom, et par exemple rajouter une textbox DATE (dynamiquement).

    Ce que je veux vous faire comprendre ici c'est que je ne veux pas creer 40 userControl différents, mais un seul qui s'adapte en fonction du bouton. Je parle ici du design (background, bouton retour, tableau et autre) qui seront exactement pareil. Seul le positionnement et/ou l'ajout de control sera fait dynamiquement.

    Une solution ?

    Exemple :

    Nom : 4c6bd237ce.png
Affichages : 201
Taille : 54,3 Ko



    (J'espere avoir été clair ^^, c'est assez compliqué a expliquer)

    Merci !

  2. #2
    Membre éprouvé Avatar de worm83
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Février 2010
    Messages
    459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2010
    Messages : 459
    Points : 1 118
    Points
    1 118
    Par défaut
    Bonjour,

    Plusieurs exepmple de solution
    - utilier un style différent
    - Binder le placement de ton bouton :
    - soit en créent en DP placement bouton,
    - soit en utilisant la propriété attaché correspondant au Panel de ton bouton.
    - Soit en bindant dans le Xaml la propriété de ton model correspondant au positionnement (la meilleur solution car MVVM)

    Exemple à la con, si ton panel est une grid avec des colonne tu n'a qu'a créer une propriété qui serais ButtonGridPlacement et qui remplacerais le positionnement soit par code-behind soir par Bind directement dans le XAML. Exemple de setter par code behind (qui est de loin la plus mauvais solution XD):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public int ButtonGridPlacement
    {
       get { Grid.GetColumn(monBouton);}
       set { Grid.SetColumn(monBouton, value);}
    }
    "Le train de tes injures roule sur le rail de mon indifférence."

    "Monde de merde !!"

    Georges Abitbol.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 149
    Points : 46
    Points
    46
    Par défaut
    Salut !

    Bon jai quelque soucis, en effet tu parle souvent de BINDING, or je n'ai jamais vu ce que c'était. Je commence le WPF et jai pas mal de chose a apprendre.

    je sais ce que ca fait, mais je ne sais pas le mettre en place.

    Tu aurais un exemple a me donner pour le binding de ma textbox par exemple ?

    Merci !

  4. #4
    Membre éprouvé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Points : 1 056
    Points
    1 056
    Par défaut
    Salut,

    C'est un gros morceaux de WPF. Et c'est aussi une ces grandes puissances.
    Binding

    Cela te demandera un peu de pratique...
    Bonne lecture, bon code

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 149
    Points : 46
    Points
    46
    Par défaut
    Je galère n'empeche a le faire... On peut m'aider ?
    Voici mon skype : naografix

    J'ai eu quelque idée, et si je trouve la réponse je la metterai ici.

  6. #6
    Membre éprouvé Avatar de worm83
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Février 2010
    Messages
    459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2010
    Messages : 459
    Points : 1 118
    Points
    1 118
    Par défaut
    Tiens je t'ai fait un tout petit exemple pour te montrer le principe du binding comme je te l'avais promis en privé.



    BindingExemple.zip


    Edit : active la restauration nuget
    "Le train de tes injures roule sur le rail de mon indifférence."

    "Monde de merde !!"

    Georges Abitbol.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 149
    Points : 46
    Points
    46
    Par défaut
    Super ! Merci je vais regarder ca !

  8. #8
    Membre éprouvé Avatar de worm83
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Février 2010
    Messages
    459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2010
    Messages : 459
    Points : 1 118
    Points
    1 118
    Par défaut
    Apres vu que ton control s'adapte en fonction du type d'objet inséré dans le datacontext, utilise les dataTemplate, et les DatatempleSelector.
    "Le train de tes injures roule sur le rail de mon indifférence."

    "Monde de merde !!"

    Georges Abitbol.

Discussions similaires

  1. [Débutant] Projet asp sur VisualStudio - Ajouter une condition en fonction des valeurs d'une colone
    Par yetman333 dans le forum Général Dotnet
    Réponses: 0
    Dernier message: 01/04/2014, 10h05
  2. Réponses: 4
    Dernier message: 14/02/2012, 16h18
  3. Réponses: 3
    Dernier message: 12/08/2009, 22h39
  4. StringGrid ajout de ligne en fonction des données
    Par thierrybatlle dans le forum Delphi
    Réponses: 3
    Dernier message: 26/05/2006, 13h58
  5. [VB.NET] Ajout de controles dynamiquement
    Par A77 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 25/04/2005, 09h00

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