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#] Conversion System.String en System.Drawing.Color


Sujet :

Windows Forms

  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Points : 5
    Points
    5
    Par défaut [C#] Conversion System.String en System.Drawing.Color
    Salut!
    j'utilise un fichier texte contenant des infos en 3 champs séparés par des ';' (points virgules). Pour récupérer chaque champs j'utilise Split() avec ';' comme caractère de séparation.
    Les champs 2 et 3 contiennent un System.Drawing.Color de la forme:
    ;Color [Window];Color [WindowText]
    Je veux appliquer les valeurs contenue dans ces champs aux items d'une listview en BackColor et ForeColor.
    Pour cela je déclare 2 variables de type Color pour y stocker les valeurs de ces champs.
    Voici un morceau du code:
    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
     
    private void Couleur()
    {
        StreamReader sr = new StreamReader("path");
     
        string Liste;
        string []Splitter = new string[] {};
     
        Color BackColor;
        Color ForeColor;
     
        while((Liste = sr.ReadLine) != null)
        {
            Splitter = Liste.Split(new char[]{';'});
            BackColor = Splitter[1];
            ForeColor = Splitter[2];
     
            for(int i = 0; i<listView1.Items.Count; i++)
            {
                listView1.Items[i].BackColor = BackColor;
                listView1.Items[i].ForeColor = ForeColor;
            }
     
     
        } 
     
    }
    Y'a-t-il un moyen de convertir un System.string en System.Drawing.Color.
    J'aimerais pouvoir utiliser la valeur des champs couleur pour l'appliquer à la listview
    Merci.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 92
    Points : 114
    Points
    114
    Par défaut
    cela n'existe pas pour les systemcolors mais pour les colors classiques ou tu as une méthode fromName.

  3. #3
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Que veux-tu dire par couleur classique? Est-ce que c'est possible à partir d'un ColorDialog() qu'un utilisateur ait accès qu'au couleur classique?
    Merci

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 92
    Points : 114
    Points
    114
    Par défaut
    Ce que j'entends par couleur classiques ce sont qui ne sont pas utilisées par le système. C'est à dire toutes les couleurs sauf celles de windows (en terme de nom).

  5. #5
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Ok je vois!
    Et peut-on restreindre ces couleurs à un ColorDialog(), c'est que lors de l'appel au ColorDialog(), l'utilisateur ne peut que choisir les couleurs classiques.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 92
    Points : 114
    Points
    114
    Par défaut
    Je pense que tu dois te faire ton propre controle pour ca...

  7. #7
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Salut!
    En cherchant dans la MSDN, j'ai trouvé une méthode qui convertit une structure Color en représentation de couleur HTML de type chaîne.
    On aura un code du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    					string toto = System.Drawing.ColorTranslator.ToHtml(Couleur);
    					string LaCouleur = System.Drawing.ColorTranslator.FromHtml(toto);
    Voilà je pense que ça devrait résoudre mon problème.
    Sinon je posterai à nouveau lol!

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

Discussions similaires

  1. convertir un string en system.drawing.color
    Par kira-3 dans le forum VB.NET
    Réponses: 1
    Dernier message: 01/05/2009, 09h59
  2. Réponses: 2
    Dernier message: 14/05/2007, 08h32
  3. Cast std::string to System::String
    Par breezer911 dans le forum C++/CLI
    Réponses: 3
    Dernier message: 04/04/2007, 22h18
  4. Cast std::string to System::String
    Par breezer911 dans le forum Visual C++
    Réponses: 4
    Dernier message: 04/04/2007, 19h05
  5. cannot convert 'std::string' to 'System::String ^'
    Par broadhead dans le forum MFC
    Réponses: 1
    Dernier message: 14/06/2005, 11h37

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