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 :

Variables window vers usercontrol


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Juillet 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 8
    Par défaut Variables window vers usercontrol
    Bon voila, je suis en train de créer une application et dans ma fenêtre principal j'ai un rectangle avec un champ texte à l'intérieur. Lorsqu'un texte est saisi ça appelle mon usercontrol new Formclient().

    J'aimerai savoir, comment faire pour récupérer dans mon usercontrol une variable qui soit égal au contenu du champ texte de ma première fenêtre.

    C'est sans doute tout bête mais je ne vois pas comment faire

    Merci d'avance

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Par défaut
    Salut,

    Une solution est de passer le texte dans le constructeur du UserControl :
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    new Formclient(maTextBox.Text)

    Tu dois bien sûr ajouter au niveau de ton UserControl un constructeur prenant un paramètre :
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public Formclient(string val){
      // utilisation de val
    }

  3. #3
    Membre habitué
    Inscrit en
    Juillet 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 8
    Par défaut
    Oui du coup c'est que j'ai fait mais j'avais l'impression que c'était du bricolage. En fait l'usercontrol c'est comme un programme à pars entière quoi et au final ce n'est peut être pas ce qu'il me faut ?

    En gros je suis en train de faire une application de gestion de centre de loisir etc ... donc à gauche de l'appli j'ai mes champs de recherche etc et à droite je vais donc devoir afficher/desafficher genre une dizaine d'usercontrol et donc passer des variable dedans à chaque fois c'est bien ça ?

    Pas d'autres solutions ?

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Par défaut
    Disons que si ton UserControl a besoin à chaque fois d'une valeur pour pouvoir fonctionner, cette solution est adaptée.

    Après, si le besoin est de fournir une ou plusieurs informations au contrôle utilisateur et ceci même après que le contrôle utilisateur ait été affiché, alors il faut voir d'autres solutions comme par exemple la mise en place de propriété au niveau du UserControl.

    Un exemple :
    Code c# : 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
        public string ChampTexte {
          get { return (string)GetValue(ChampTexteProperty); }
          set { SetValue(ChampTexteProperty, value); }
        }
     
        public static readonly DependencyProperty ChampTexteProperty =
                               DependencyProperty.Register(
                               "ChampTexte",
                               typeof(string),
                               typeof(MonUserControl),
                               new FrameworkPropertyMetadata(null, new PropertyChangedCallback(ChampTextePropertyChanged))
                               );
     
        public static void ChampTextePropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) {
          MonUserControl ctrl = d as MonUserControl;
          if (ctrl != null) {
            string strChampTexte = e.NewValue as string;
     
            if (strChampTexte != null) {
              // Utilisation du champTexte
     
            }
          }
        }

  5. #5
    Membre habitué
    Inscrit en
    Juillet 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 8
    Par défaut
    D'accord et maintenant, si je veux modifier la valeur d'un textbox ou autre control de mon mainwindows à partir de mon usercontrol, comment je peux faire ?

Discussions similaires

  1. [VB]Comment utiliser les variables Windows?
    Par Furius dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 13/10/2005, 21h20
  2. [FLASH MX2004] Variable URL vers FLASH et accents
    Par daner06 dans le forum Flash
    Réponses: 1
    Dernier message: 25/07/2005, 22h50
  3. Réponses: 1
    Dernier message: 01/02/2005, 12h56
  4. [Linux]différence de code de windows vers unix sous eclipse
    Par skywalker3 dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 05/01/2005, 14h11
  5. Portée des variables vbscript vers ASP
    Par Immobilis dans le forum ASP
    Réponses: 3
    Dernier message: 03/11/2004, 10h14

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