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 Forms Discussion :

Binding multiples entre des composants


Sujet :

Windows Forms

  1. #1
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Par défaut Binding multiples entre des composants
    Bonjour,

    J'ai une question qui me paraît assez simple, mais je n'ai pas trouvé de solution satisfaisante.
    Mon objectif est que le fait de cocher/décocher un checkbox dans mon formulaire active/désactive plusieurs contrôles dans ma page. C'est donc un one-way binding.
    Je peux le faire pour un composant, par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chbNonSoldees.DataBindings.Add("Checked", nudNonSoldees, "Enabled");
    Mais si je tente de rajouter cette ligne par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chbNonSoldees.DataBindings.Add("Checked", lblJoursNonSoldees, "Enabled");
    J'obtiens un message disant que seul un binding est autorisé :
    Citation Envoyé par ArgumentException
    This causes two bindings in the collection to bind to the same property
    J'ai pensé à mettre les contrôles dans un panel que je binderais à la place des autres contrôles, mais je ne trouve pas ça très élégant.

    Quelqu'un aurait-il une solution plus jolie ?

    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  2. #2
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Par défaut
    Une fois n'est pas coutume, je vais me répondre.
    Il fallait en fait "inverser" les bindings :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    nudNonSoldees.DataBindings.Add("Enabled", chbNonSoldees, "Checked");
    lblJoursNonSoldees.DataBindings.Add("Enabled", chbNonSoldees, "Checked");
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Multiplication entre des textboxs
    Par jeje25440 dans le forum VB.NET
    Réponses: 12
    Dernier message: 06/08/2013, 03h45
  2. Réponses: 1
    Dernier message: 18/01/2008, 13h17
  3. Réponses: 10
    Dernier message: 02/01/2008, 23h02
  4. Comment modéliser des liens multiples entre tables ?
    Par MadM@tt dans le forum Schéma
    Réponses: 2
    Dernier message: 15/11/2007, 16h51
  5. [BINDING] Interation entre les composants?
    Par fabszn dans le forum JSF
    Réponses: 5
    Dernier message: 07/08/2007, 14h38

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