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 :

[C#] Renseignement


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Janvier 2004
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 208
    Par défaut [C#] Renseignement
    Bonjour a tous

    Voici quelque semaine que je suis passé au C#.

    au part avant en VB.NET lorsque je voulais déclaré une variable de facon global au prog, je créais un module ou je placais tous ca. Ensuite au travers de l'utilisation du prog je conservais l'initialisation de ma variable suivant sont utilisation.

    Aujourd'hui dans un dev C# je me retrouve comfronté au probleme de ne pas pouvoir déclarer une variable global au projet dans le meme procedé que vb.

    je me pose donc la question, est ce un manque d'aptitude a l'utilisation de C# ou faut-il completement suivre l'utilisation d'un développement orienté objets.

    Il y a peu etre quelque chose que j'ai mal percu dans mes lectures, et je me retrouve bloqué dans mes devs car je ne vois plus comment transmettre une variable de facon globale.

    merci

  2. #2
    Membre éprouvé
    Avatar de NiamorH
    Inscrit en
    Juin 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 1 309
    Par défaut
    salut,
    en vb.net il est possible de déclarer des variables globales dans un module.

    je serais étonné qu'en C# on ne puisse pas.

    sinon tu peux toujours faire une variable shared dans une classe non instanciable et non héritables. celà revient au même et c'est plus objet.

  3. #3
    Membre très actif
    Inscrit en
    Janvier 2004
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 208
    Par défaut
    je te dis oui mais le probleme est alors que tu passe ton temps a faire des copies de ta variable objet.

  4. #4
    Membre éprouvé
    Avatar de NiamorH
    Inscrit en
    Juin 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 1 309
    Par défaut
    hum non le principe d'une variable shared c'est justement qu'elle est UNIQUE pour tout ton projet et que tu peux l'appeller SANS INSTANCIER d'objet par le biais du nom de la classe !!

    exemple (en vb.net désolé) :

    j'ai une classe Impression

    dedans j'ai

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public Shared var As Integer = 120
    et bien dans tout mon projet, je peux ecrire Impression.var = 156

    je ne créé aucun objet, j'accede directement a partir de la classe.

    c'est exactement comme une variable public de module.

  5. #5
    Membre très actif
    Inscrit en
    Janvier 2004
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 208
    Par défaut
    a mon avis tu devrais consulter un bouquin sur le C#

    mais bon te casse pas la tete

  6. #6
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Une classe déclarée comme static et qui contiendrait le différente variables "globales" nécessaires ferait l'affaire je suppose. Ou alors c'est que je n'ai pas du tout compris le problème ^^

  7. #7
    Membre très actif
    Inscrit en
    Janvier 2004
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 208
    Par défaut
    merci c'est exactement cela dans les grandes lignes.

    tu ne fais que comfirmer mes recherches sur le sujet de ce matin.

    Reste plus qu'a faire les tests.

  8. #8
    Membre éprouvé
    Avatar de NiamorH
    Inscrit en
    Juin 2002
    Messages
    1 309
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 1 309
    Par défaut
    dis donc nashouille, tu sais que static en C# c'est equivalent à shared en VB.net ...


  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 141
    Par défaut
    Bonjour à tous,

    Votre discussion m'a vivement intéressé car moi aussi je débute et je rame sévère !!!

    Grâce aux explis de StormimOn, j'ai pu réalisé ce que tu demandais. Mon problème était le même : je voulais définirr une chaine de connexion en string globale que je puisse éventuellement changer ( pour des tests je passe alternativement à un serveur MySQL local et un serveur distant ). Ainsi chaque form peut appeller la chaine de connexion.

    J'ai donc suivi la voie tracée par StormimOn en définissant une classe static.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    namespace MonSQL
    {
        public static class VarGlob
        {
            public static string ConnnectionStr = "Database=essaisql;Data Source=localhost;User Id=root;Password=''";
        }
    }
    et je l'appelle depuis une form

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Connection.ConnectionString = VarGlob.ConnnectionStr;
    Amicalement

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

Discussions similaires

  1. Comment renseigner la variable autocommit dans my.ini
    Par Charroin dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 18/09/2003, 15h23
  2. [Dev-Pascal] Le compilateur renseigne la fonction Str comme illégale
    Par goto dans le forum Autres IDE
    Réponses: 3
    Dernier message: 16/08/2003, 16h22
  3. [Renseignement] Compilateur C pour µC
    Par Vincent PETIT dans le forum C
    Réponses: 6
    Dernier message: 19/01/2003, 00h24
  4. demande de renseignements
    Par canada1975 dans le forum Développement
    Réponses: 6
    Dernier message: 26/12/2002, 22h18
  5. Renseignement concernant MulDiv
    Par bastien dans le forum C++Builder
    Réponses: 2
    Dernier message: 17/06/2002, 10h22

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