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 Presentation Foundation Discussion :

extraire des données d'une dataset chargé d'un fichier xml


Sujet :

Windows Presentation Foundation

  1. #1
    Membre à l'essai
    Inscrit en
    Novembre 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 23
    Points : 16
    Points
    16
    Par défaut extraire des données d'une dataset chargé d'un fichier xml
    slt

    Je travaille sur une application wpf et ça consiste à récupérer des données d'une dataset chargée à partir d'un fichier xml.(dans le fichier xml il y a les propriétés de chaque bouton)Alors mon problème c'est que je peux pas récupérer toutes les données de ce fichier(en fait à ce que j'ai compris il y a un problème de casting) .Voilà le fichier xml
    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
    <Boutons>
        <name>1</name>
    	<Height>63</Height>
    	<Width>101</Width>
    	<Content>1.png</Content>	
    	<position_top>0</position_top>
    	<position_right>290</position_right>
    	<position_bottom>295</position_bottom>
    	<position_left>0</position_left>
    	<Background>TransparentBrush</Background>
    	<BorderBrush>TransparentBrush</BorderBrush>
    	<HorizontalAlignment>Right</HorizontalAlignment>
    	<VerticalAlignment>Top</VerticalAlignment>	
    	<Visibility>Visible</Visibility>
    </Boutons>
    et le code c#
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     Image num_1 = new Image();
                                num_1.Source = new BitmapImage(new Uri(@"Composants\shlmr\" + Boutons.Rows[i]["Content"] + "", UriKind.Relative));
                                btn1.Content = num_1;
                                btn1.Background = (SolidColorBrush)(Boutons.Rows[i]["Background"]);
                                btn1.BorderBrush = (SolidColorBrush)(Boutons.Rows[i]["BorderBrush"]);
                                btn1.HorizontalAlignment = (HorizontalAlignment)(Boutons.Rows[i]["HorizontalAlignment"]);
                                btn1.VerticalAlignment = (VerticalAlignment)(Boutons.Rows[i]["VerticalAlignment"]);
                                Thickness position_1 = new Thickness((int)(Boutons.Rows[i]["position_top"]), (int)(Boutons.Rows[i]["position_right"]),(int)(Boutons.Rows[i]["position_bottom"]), (int)(Boutons.Rows[i]["position_left"]));
                                btn1.Margin = position_1;
                                btn1.Height = (int)(Boutons.Rows[i]["Height"]);
                                btn1.Width = (int)(Boutons.Rows[i]["Width"]);
                                btn1.Visibility = (Visibility)(Boutons.Rows[i]["Visibility"]);
    Merci de m'aider

  2. #2
    Membre éprouvé Avatar de jmix90
    Homme Profil pro
    Consultant .Net
    Inscrit en
    Juillet 2007
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 576
    Points : 998
    Points
    998
    Par défaut
    Bonsoir,

    Cela serait plus simple si tu nous indiquait le message d'erreur !

    En passant tu as plusieurs types qui ne sont pas des Strings et que tu ne peux donc pas réassigner tels quels dans ton image :
    • Background et BorderBrush : il faut créer un objet Brush
    • Visibility,VerticalAlignment et HorizontalAlignment sont des enums, il faut que tu utilises Enum.TryParse().
    Jonathan ANTOINE - Découvrez mon livre: MVVM, de la découverte à la maîtrise.

    Microsoft MVP Client Application Development
    - MCPD Windows 4.0, etc.
    Mon blog : http://www.jonathanantoine.com

  3. #3
    Membre à l'essai
    Inscrit en
    Novembre 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    bsr

    y'a pas de message d'erreur généré c'est juste que mon bouton ne change pas de propriétés il reste tel qu'il est !!!
    pour être plus précise: j'ai rempli un fichier xml avec les propriétés du bouton que je souhaite avoir.
    j'ai chargé une dataset à partir de ce fichier et je veux accéder à ces propriétés (qui sont dans la dataset) pour les attribuer à mon bouton pour qu'il prenne l'apparence vouloue.
    j'éspère que j'ai bien expliqué mon problème

    merci

  4. #4
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    En plus, pour positionner le contrôle, tu utilises la marge:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    btn1.Margin = position_1;

    Passe plutôt par un Canvas

  5. #5
    Membre éprouvé Avatar de jmix90
    Homme Profil pro
    Consultant .Net
    Inscrit en
    Juillet 2007
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 576
    Points : 998
    Points
    998
    Par défaut
    Hello,

    Alors il nous faudrait plus de code... Comment place tu le bouton dans ta fenêtre... etc ?
    Jonathan ANTOINE - Découvrez mon livre: MVVM, de la découverte à la maîtrise.

    Microsoft MVP Client Application Development
    - MCPD Windows 4.0, etc.
    Mon blog : http://www.jonathanantoine.com

  6. #6
    Membre à l'essai
    Inscrit en
    Novembre 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Bonjour à tous

    merci pour votre aide mais j'ai pas bien saisi Enum.TryParse() pour la Visibility,VerticalAlignment et HorizontalAlignment ( j'ai pas su comment l'utiliser ,est ce que vous pouvez m'éclaircir d'avantage .merci

  7. #7
    Membre éprouvé Avatar de jmix90
    Homme Profil pro
    Consultant .Net
    Inscrit en
    Juillet 2007
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 576
    Points : 998
    Points
    998
    Par défaut
    Citation Envoyé par Agnès22 Voir le message
    Bonjour à tous

    merci pour votre aide mais j'ai pas bien saisi Enum.TryParse() pour la Visibility,VerticalAlignment et HorizontalAlignment ( j'ai pas su comment l'utiliser ,est ce que vous pouvez m'éclaircir d'avantage .merci
    Voici un exemple pour Visibility :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    btn1.Visibility = (Visibility)Enum.Parse(typeof(Visibility), (Boutons.Rows[i]["Visibility"]));
    Jonathan ANTOINE - Découvrez mon livre: MVVM, de la découverte à la maîtrise.

    Microsoft MVP Client Application Development
    - MCPD Windows 4.0, etc.
    Mon blog : http://www.jonathanantoine.com

  8. #8
    Membre à l'essai
    Inscrit en
    Novembre 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    j'ai essayé mais ça ne marche pas

    voila le message d'erreur :
    La méthode surchargée correspondant le mieux à System.Enum.Parse(System.Type,String) posséde des arguments non valides.

  9. #9
    Membre éprouvé Avatar de jmix90
    Homme Profil pro
    Consultant .Net
    Inscrit en
    Juillet 2007
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 576
    Points : 998
    Points
    998
    Par défaut
    Citation Envoyé par Agnès22 Voir le message
    j'ai essayé mais ça ne marche pas

    voila le message d'erreur : " la méthode surchargée correspondant le mieux à System.Enum.Parse(System.Type,String) possède des arguments non valides.
    Quel est le type de (Boutons.Rows[i]["Visibility"]) ? Il faut que cela soit un string...
    Jonathan ANTOINE - Découvrez mon livre: MVVM, de la découverte à la maîtrise.

    Microsoft MVP Client Application Development
    - MCPD Windows 4.0, etc.
    Mon blog : http://www.jonathanantoine.com

  10. #10
    Membre à l'essai
    Inscrit en
    Novembre 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    c'est une donnée que j'ai extraite d'une dataset qui a été chargée à partir d'un fichier xml (normalement elle doit prendre soit la vaLeur Visible soit Hidden)

    ce que j'avais c'étais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    btn1.Visibility = (Visibility).Hidden
    je veux que la valeur hidden soit prise de la dataset

  11. #11
    Membre éprouvé Avatar de jmix90
    Homme Profil pro
    Consultant .Net
    Inscrit en
    Juillet 2007
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 576
    Points : 998
    Points
    998
    Par défaut
    Oui donc, dans ton dataSet : Quel est le type de (Boutons.Rows[i]["Visibility"]) ? Il faut que cela soit un string...
    Jonathan ANTOINE - Découvrez mon livre: MVVM, de la découverte à la maîtrise.

    Microsoft MVP Client Application Development
    - MCPD Windows 4.0, etc.
    Mon blog : http://www.jonathanantoine.com

  12. #12
    Membre à l'essai
    Inscrit en
    Novembre 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 23
    Points : 16
    Points
    16
    Par défaut
    Merci le problème de verticalAlignement, de visibilité et de horizontalAlignement a été bien résolu.Juste j'ai pas su comment faire pour ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     SolidColorBrush Brush = new SolidColorBrush((Boutons.Rows[i]["Background"])); btn1.Background=Brush;
    Merci encore de votre aide

  13. #13
    Membre éprouvé Avatar de jmix90
    Homme Profil pro
    Consultant .Net
    Inscrit en
    Juillet 2007
    Messages
    576
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant .Net
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 576
    Points : 998
    Points
    998
    Par défaut
    Hello,

    Pour les brush, je les sérializerai sous la forme d'un string XAML avec XAMWriter pour les stocker et les rechargerait avec un XAMLWriter...

    Car la je ne sais pas sous quel format tu les sérialize et un brush peut être beaucoup de choses (visualBrush, SolidColorBrush, ...)
    Jonathan ANTOINE - Découvrez mon livre: MVVM, de la découverte à la maîtrise.

    Microsoft MVP Client Application Development
    - MCPD Windows 4.0, etc.
    Mon blog : http://www.jonathanantoine.com

Discussions similaires

  1. Extraire des données d'une même cellule, dans plusieurs fichiers
    Par chicanne dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 31/07/2016, 12h06
  2. Réponses: 4
    Dernier message: 17/01/2007, 09h09
  3. [RegEx] Comment extraire des données d'une page HTML ?
    Par taliesin26 dans le forum Langage
    Réponses: 1
    Dernier message: 11/12/2006, 12h39
  4. [Système] Extraire des données d'une page web
    Par nazoreen dans le forum Langage
    Réponses: 17
    Dernier message: 22/03/2006, 21h38
  5. Réponses: 1
    Dernier message: 28/09/2005, 15h35

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