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

C# Discussion :

Appel d'un événement interne d'un controle inclut dans un controle ? [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 122
    Par défaut Appel d'un événement interne d'un controle inclut dans un controle ?
    Bonjour,

    Ma question est assez théorique car je n'ai pas assez de bagage en csharp pour y répondre, j'espère que vous pourrez m'aider.

    J'ai un controle dans lequel il y a un controle interne avec des événements. Ma question est de savoir comment je peux déclancher un événement de mon controle interne tout en sachant que je ne le visualise pas directement (dans la liste des événements) en sélectionnant mon controle ?

    Si ma question n'est pas assez précise je pourrais vous l'illustrer avec un controle (en fait tout un ensemble, mais je ma question porte sur l'un d'entre eux) qui me pose ce genre de problème.

    Pour information, la dernière réponse du support où on en a fait l'acquisition est en gros du genre << tu as tout ce qu'il te faut, cherche un peu >>. Ce qu'ils ne savent pas, c'est que je suis seul développeur csharp et autodidacte, c'est-à-dire certainement avec beaucoup de manque de connaissance sur csharp. Je ne dis pas cela pour vous faire pleurer sur moi, mais pour vous expliquer pourquoi je pose ce genre de question, qui pour certains semblera basique.

    Merci par avance.

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Potus Voir le message
    Ma question est de savoir comment je peux déclancher un événement de mon controle interne
    Euh, normalement tu fais pas ça... c'est le contrôle lui-même qui est supposé déclencher l'évènement. Si ce contrôle ne sait pas quand déclencher l'évènement, il y a probablement un problème de conception.

    Essaie de décrire plus précisément ce que tu cherches à faire, parce que là c'est un peu vague...

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 122
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Essaie de décrire plus précisément ce que tu cherches à faire, parce que là c'est un peu vague...
    Ok, je développe : J'ai un controle ComboTree qui contient un controle AdvTree; Autrement dit, c'est une liste box avec des cases à cocher.



    Quand je sélectionne ma listeBox, je ne trouve pas les évènements du contrôle AdvTree (cad des case à cocher dans la liste). L'assistance m'a confirmé que c'est bien cet événement que je dois appeler.

    Ce que je veux faire c'est appeler l'évènement AdvTree.AfterCheck lorsque je coche ou décoche sur la même ligne.

    En fait je sais ce que je dois appeler comme événement, mais je ne sais pas comment on le déclenche. Et comme tu me dis que cela dois se faire automatiquement ça me laisse encore plus perplexe !

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Toujours pas tout compris...

    Citation Envoyé par Potus Voir le message
    Ce que je veux faire c'est appeler l'évènement AdvTree.AfterCheck lorsque je coche ou décoche sur la même ligne.
    On n'appelle pas un évènement, c'est lui qui t'appelle. C'est tout le principe des évènements...

    Citation Envoyé par Potus Voir le message
    Et comme tu me dis que cela dois se faire automatiquement ça me laisse encore plus perplexe !
    Bah c'est le AdvTree qui déclenche un évènement AfterCheck quand tu coches une CheckBox. C'est pas à toi de lui dire de déclencher l'évènement, sinon ça sert à rien ; le but d'un évènement c'est d'être notifié quand quelque chose se produit, et par définition tu ne sais pas à l'avance quand ça va se produire...

  5. #5
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2008
    Messages : 231
    Par défaut
    Es ce que ta demande ne serai pas tout simplement :
    Comment faire pour exploiter l'évènement ?
    En gros un évènement se déclenche (c'est en dehors de ton champs d'utilisation du control) et toi tu veux exploiter cette évènement en attachant une FONCTION au déclenchement de cette évènement (qui "après avoir cocher la case").

    Pour cela tu dois attacher une fonction à ton évènement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    tonCheckBox.AfterChecked += new EventClick(MaFonctionTraitement);
    Ne fait pas de copier/coller c'est un exemple je ne suis pas sur des noms

    Es ce que c'est ça ta demande ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 122
    Par défaut
    Voilà la dernière phrase de l'assistance :
    Citation Envoyé par Assistance du composant
    AdvTree is property. Please review properties and object types. Everything is there, you just need to pay attention.
    Quand j'accède à l'explorateur d'objets, je peux trouver dans le composant ComboTree effectivement la propriété AdvTree (mais pas directement ses événements) :



    Quand je le sélectionne, voilà ce que l'on trouve sur la propriété AdvTree :



    Si j'accède au controle AdvTree, là je trouve bien l'événement qui m'interrese (AfterCheck) :



    Ce que je ne sais pas faire, c'est lier les deux; Autrement dit, localiser le controle interne du controle ComboTree (Celui que Morgand appele tonCheckBox) !

    Je pense que Morgand est effectivement pas loin de la vérité.

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

Discussions similaires

  1. Probleme recupération valeur dans un controle onglet dans requete SQL
    Par golfmatcam dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 08/10/2013, 21h50
  2. Réponses: 1
    Dernier message: 22/06/2012, 12h24
  3. Affecter a un controle inclut dans un datagrid un evennement
    Par Alabama-song dans le forum ASP.NET
    Réponses: 5
    Dernier message: 08/08/2007, 13h42
  4. Réponses: 3
    Dernier message: 07/07/2007, 10h35
  5. Appel de procédure événement
    Par James64 dans le forum Langage
    Réponses: 4
    Dernier message: 22/06/2005, 10h33

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