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 :

Erreur sur invoke(myDelegate);


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    402
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 402
    Par défaut Erreur sur invoke(myDelegate);
    Hello hello,

    j'ai une erreur sur l'utilisation de la méthode Invoke(my_delegate);
    Le nom 'invoke' n'existe pas dans le contexte actuel
    Pourtant quand j'écris le début de la ligne, l'auto-complétion me propose de sélectionner 'invoke' et dit :
    invoke
    Extrait de code pour en appeler un événement en toute sécurité
    Puis j'ai lus qu'il fallait l'utiliser comme je le faisais (je dois faire une erreur obligatoirement mais je vois pas où).

    Voilà le code concerné :
    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
     
    namespace WpfApplication1
    {
        delegate void T();
     
        public partial class MainWindow : Window
        {
            Thread Tread_test_linq;
            T linq;
     
            void threadA()
            {
                invoke(linq);
            }
     
            void calcul()
            {
                // mon calcul
            }
     
            private void button3_Click(object sender, RoutedEventArgs e)
            {
                linq = new T(calcul);
                Tread_test_linq = new Thread(new ThreadStart(threadA));
                Tread_test_linq.IsBackground = true;
                Tread_test_linq.Start();
     
                //du code qui n'est pas concerné
            }
        }
    }
    Peut-être voyez vous où je me suis trompé ? Si oui, ça serait super sympa de me l'indiquer svp

  2. #2
    Membre Expert
    Avatar de Sehnsucht
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2008
    Messages
    847
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Octobre 2008
    Messages : 847
    Par défaut
    Bonjour,

    C# est sensible à la casse (distinction minuscule/majuscule), et il me semble que Invoke prend un i majuscule donc méthode invoke (avec un i minuscule) n'est pas reconnue.

    Cordialement !

  3. #3
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    402
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 402
    Par défaut
    C'est bon j'ai trouvé d'où ça vient

    Cela dit je suis OK avec toi Sehnsucht mais pourtant c'est bien quand je tapais avec la minuscule
    inv
    que l'auto-complétion m'était proposé (c'est étrange et je vois pas pourquoi ) pour
    invoke
    et non
    Invoke
    Donc mon erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
            void threadA()
            {
                linq.Invoke();
            }
    Et là il y a bien la majuscule (je vois vraiment pas d'où Visual Studio me sortait cette proposition "invoke" ???).
    Il fallait indiquer la méthode Invoke du Delegate "linq" apparemment.

    Merci quand même.

  4. #4
    Membre Expert Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Par défaut
    Citation Envoyé par zouuc Voir le message
    Et là il y a bien la majuscule (je vois vraiment pas d'où Visual Studio me sortait cette proposition "invoke" ???).
    C'est un snippet, ou "extrait de code" en bon françois. par exemple, tape "if" puis tab tab, et hop tu as automatiquement les parenthèses et les accolades qui vont bien.
    Ou bien tape "exception" tab tab, et un squelette de classe héritant correctement de System.Exception apparaît.

  5. #5
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    402
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 402
    Par défaut
    Merci beaucoup pour l'information

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

Discussions similaires

  1. Erreur sur une fonction avec des paramètres
    Par Elois dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 05/05/2004, 21h00
  2. [VBS] Erreur sur "AddWindowsPrinterConnection"
    Par Admin dans le forum VBScript
    Réponses: 5
    Dernier message: 27/03/2004, 16h15
  3. Erreur sur serveur lié
    Par k-lendos dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 18/03/2004, 15h21
  4. []Erreur sur second emploi collection binding
    Par jacma dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 08/03/2004, 18h02
  5. Erreur sur le TNSListener après installation de 9iAS
    Par Patmane dans le forum Installation
    Réponses: 4
    Dernier message: 04/02/2004, 11h16

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