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

Silverlight Discussion :

Template de Combobox


Sujet :

Silverlight

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 141
    Par défaut Template de Combobox
    Bonjour
    J'ai fais une vue qui contient des combobox

    Lorsque le combobox n'a pas de résultat ,la couleur de Background est orange
    Lorsque le combobox a de résultat ,la couleur de Background est vert



    Mon problème, c'est que mon combobox n'apparait pas par la couleur

    J'ai trouvé une méthodes pour pouvoir changer le style du combobox mais elle ne s'applique sur les deux couleurs

    Est-ce que quellqu'un aurait déjà rencontré ce besoin ?

    Merci

  2. #2
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 69
    Par défaut
    qu'est ce que vous entendez dire avec mon combobox n'a pas de resultat ? aucun chois n'a été séléctionné ? ou bien qu'il est vide apres chargement ?
    peux tu montrer le code qui gere les couleur de fond ?

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 141
    Par défaut
    Citation Envoyé par sofienems Voir le message
    qu'est ce que vous entendez dire avec mon combobox n'a pas de resultat ? aucun chois n'a été séléctionné ? ou bien qu'il est vide apres chargement ?
    peux tu montrer le code qui gere les couleur de fond ?
    mon combobox n'a pas de resultat c-a-d qu'il est vide apres chargement
    pour les couleurs de fond j'ai fais à partir du style de combobox et j'ai réalisé un converter

  4. #4
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 69
    Par défaut
    j'ai ecrit ça et ça marche tres bien , tu peux aussi utiliser un canevas si tu veux que le fond de combobox soit un rectangle coloré :

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
    namespace SilverlightApplication21
    {
        public partial class MainPage : UserControl
        {
            public MainPage()
            {
                InitializeComponent();
     
     
                const string INACTIVESTEPCOLOR = "#FFB2B4A8";
                const string ACTIVESTEPCOLOR = "#FF7D00";
     
                SolidColorBrush ActiveSolidColor = new SolidColorBrush(ColorC.HexColor(ACTIVESTEPCOLOR));
     
                SolidColorBrush InActiveSolidColor = new SolidColorBrush(ColorC.HexColor(INACTIVESTEPCOLOR));
     
               // si Active 
                  comboBox1.Background = ActiveSolidColor; 
                // si non active 
                  comboBox1.Background = InActiveSolidColor; 
            }
        }
     
        static class ColorC
        {
     
            public static Color HexColor(String hex)
            { //remove the # at the front
                hex = hex.Replace("#", "");
                byte a = 255;
                byte r = 255;
                byte g = 255;
                byte b = 255;
                int start = 0;
                //handle ARGB strings (8 characters long) 
                if (hex.Length == 8)
                {
                    a = byte.Parse(hex.Substring(0, 2), System.Globalization.NumberStyles.HexNumber);
                    start = 2;
                }
                //convert RGB characters to bytes 
                r = byte.Parse(hex.Substring(start, 2),
                    System.Globalization.NumberStyles.HexNumber);
                g = byte.Parse(hex.Substring(start + 2, 2), System.Globalization.NumberStyles.HexNumber);
                b = byte.Parse(hex.Substring(start + 4, 2), System.Globalization.NumberStyles.HexNumber);
                return Color.FromArgb(a, r, g, b);
            }
     
     
        }
     
    }

  5. #5
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 141
    Par défaut
    Citation Envoyé par sofienems Voir le message
    j'ai ecrit ça et ça marche tres bien , tu peux aussi utiliser un canevas si tu veux que le fond de combobox soit un rectangle coloré :

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
    namespace SilverlightApplication21
    {
        public partial class MainPage : UserControl
        {
            public MainPage()
            {
                InitializeComponent();
     
     
                const string INACTIVESTEPCOLOR = "#FFB2B4A8";
                const string ACTIVESTEPCOLOR = "#FF7D00";
     
                SolidColorBrush ActiveSolidColor = new SolidColorBrush(ColorC.HexColor(ACTIVESTEPCOLOR));
     
                SolidColorBrush InActiveSolidColor = new SolidColorBrush(ColorC.HexColor(INACTIVESTEPCOLOR));
     
               // si Active 
                  comboBox1.Background = ActiveSolidColor; 
                // si non active 
                  comboBox1.Background = InActiveSolidColor; 
            }
        }
     
        static class ColorC
        {
     
            public static Color HexColor(String hex)
            { //remove the # at the front
                hex = hex.Replace("#", "");
                byte a = 255;
                byte r = 255;
                byte g = 255;
                byte b = 255;
                int start = 0;
                //handle ARGB strings (8 characters long) 
                if (hex.Length == 8)
                {
                    a = byte.Parse(hex.Substring(0, 2), System.Globalization.NumberStyles.HexNumber);
                    start = 2;
                }
                //convert RGB characters to bytes 
                r = byte.Parse(hex.Substring(start, 2),
                    System.Globalization.NumberStyles.HexNumber);
                g = byte.Parse(hex.Substring(start + 2, 2), System.Globalization.NumberStyles.HexNumber);
                b = byte.Parse(hex.Substring(start + 4, 2), System.Globalization.NumberStyles.HexNumber);
                return Color.FromArgb(a, r, g, b);
            }
     
     
        }
     
    }
    Pour le xaml ,tu as bindé le background de combobox sur quoi???

  6. #6
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 69
    Par défaut
    j'ai pas fait de binding .
    j'ai manipuler la couleur directement de puis xaml.cs
    si le contenu ton combobox est binder sur une source de donnée .
    tu peux toujours utiliser ma methode en faisant le test sur
    comboBox1.Items.Count

Discussions similaires

  1. Combobox avec un template
    Par DiverSIG dans le forum Ext JS / Sencha
    Réponses: 1
    Dernier message: 13/12/2013, 20h53
  2. Templating d'une combobox
    Par mambox dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 01/06/2011, 11h17
  3. Heritage Combobox & template
    Par Baptiste_87 dans le forum Silverlight
    Réponses: 4
    Dernier message: 21/04/2011, 12h45
  4. Control Template ComboBox
    Par warmy dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 02/03/2009, 11h35
  5. Template de combobox avec une ListBox
    Par bassreligion dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 27/08/2008, 14h22

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