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’une structure à partir d’une autre classe


Sujet :

C#

  1. #1
    Membre régulier
    Femme Profil pro
    Inscrit en
    Mai 2008
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 167
    Points : 88
    Points
    88
    Par défaut Appel d’une structure à partir d’une autre classe
    Bonjour tout le monde, j’essaye de résoudre ce problème ça fait une semaine, mais je n’arrive pas à le faire, alors je me suis dit d’essayer de tenter ma chance ici.

    J’ai une classe qui s’appelle CommandSql, à l’intérieur de cette classe j’ai déclaré une structure qui s’appelle Parametres
    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
    class CommandSql
    {
    ……………
        public struct Parametres
            {
               public string parametre, valeur;
               public Parametres(string parametre, string valeur)
                  {
                     this.parametre = parametre;
                     this.valeur = valeur;
                  }
            }
    ………………..
    }
    Mon but est de pouvoir utilisé la structure que j’ai déclaré dans la classe précédente au niveau de la classe suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public partial class ListeSecteurs : Window
    { 
    public ListeSecteurs()
    { 
    InitializeComponent();
    ....................................
    ListParam.Clear();
    ListParam.Add(new Parametres("Parametres", "get_chauffeurs"));
    ListParam.Add(new Parametres("fonction", "Chauffeur"));
    StoredProcedure("MaProcedure", ListParam, DGrid_Secteur);
    }
    public List<Parametres> ListParam = new List<Parametres>(); //erreur
    ....................................
    }
    Au niveau de classe ci-dessus, je veux créer une liste de type Parametres (la structure que j’ai créé au niveau de la première classe)

    Comment faire pour accéder à la structure définit dans la première classe à partir de la deuxième classe.
    Merci d'avance.

  2. #2
    Invité
    Invité(e)
    Par défaut
    As-tu essayé ça CommandSql.Parametres ?

  3. #3
    Membre régulier
    Femme Profil pro
    Inscrit en
    Mai 2008
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 167
    Points : 88
    Points
    88
    Par défaut
    Merci pour ta réponse h2s84.
    En fait, oui j'ai essayé de le faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public wSecteurs()
            {
                InitializeComponent();
    
             
                ListParam.Clear();
                ListParam.Add(new CommandSql.Parametres("Parametres", "get_chauffeurs"));
                ListParam.Add(new CommandSql.Parametres("fonction", "Chauffeur"));
    
            }
    
            public List<CommandSql.Parametres> ListParam = new List<CommandSql.Parametres>();
    lorsque je compile ce code j'aurai l'erreur suivante:
    Accessibilité incohérente*: le type de champ 'System.Collections.Generic.List<GDEtusa.CommandSql.Parametres>' est moins accessible que le champ 'GDEtusa.wSecteurs.ListParam'

  4. #4
    Invité
    Invité(e)
    Par défaut
    Je ne sais pas trop ce que tu veux faire mais il me semble pas être très propre. Changes la visibilité de ta classe : public class CommandSql

  5. #5
    Membre régulier
    Femme Profil pro
    Inscrit en
    Mai 2008
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 167
    Points : 88
    Points
    88
    Par défaut
    Merci encore pour ta réponse h2s84.
    En fait, le fait de mettre la classe CommandSql a public résoudre le problème.
    Mais es qu'il n y pas une autre méthode pour accéder à une structure définit dans une autre classe, à part celle de spécifier chaque fois le nom de la classe(.)nom de la structure.

    En fait mon but c'est au lieu de redéfinir cette structure dans toutes les classes.
    je la déclare une fois dans une classe et je fait appelle dans les autres classes.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Pour cela il va falloir définir ta structure en dehors de la classe CommandSql en la mettant directement dans la portée de ton espace de noms.

  7. #7
    Membre régulier
    Femme Profil pro
    Inscrit en
    Mai 2008
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 167
    Points : 88
    Points
    88
    Par défaut
    Merci énormément h2s84, j'ai résolu le problème grâce a ta dernière réponse.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/10/2012, 16h18
  2. [XL-2003] Rédiger une macro dans un classeur à partir d’une macro d'un autre classeur
    Par Roms un dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/11/2009, 15h44
  3. Réponses: 2
    Dernier message: 29/10/2009, 22h54
  4. Probleme appel de fct dans une autre classe
    Par crakotte_finance dans le forum C++
    Réponses: 6
    Dernier message: 09/10/2006, 21h22
  5. Problème pour appeler une méthode d'une autre classe
    Par tse_tilky_moje_imja dans le forum Général Python
    Réponses: 7
    Dernier message: 03/03/2006, 13h33

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