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 :

Un stackPanel ne s'affiche pas


Sujet :

Windows Presentation Foundation

  1. #1
    Membre habitué Avatar de cynferdd
    Profil pro
    Analyste Développeur .Net, PHP, SQL Server
    Inscrit en
    Avril 2003
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Analyste Développeur .Net, PHP, SQL Server

    Informations forums :
    Inscription : Avril 2003
    Messages : 154
    Points : 190
    Points
    190
    Par défaut Un stackPanel ne s'affiche pas
    Bonjour à tous.

    Je passe sûrement à côté de quelque chose au final assez simple, mais là j'avouerai ne plus trop voir par quel bout prendre la chose.

    Je travaille en ce moment sur un programme devant afficher ou non des Grid et StackPanel suivant plusieurs critères.

    N'arrivant pas à obtenir ce que je veux, j'ai tenté de faire un bout de XAML très simple pour voir si je ratais quelque chose.

    L'exemple suivant est constitué d'une grille contenant 2 lignes et 2 colonnes. Dans chaque "case" est placé un stackPanel d'une couleur différente des autres. Jusqu'ici pas de problème. J'ai ensuite inclus dans chaque stackPanel une grid avec 2 lignes et 2 colonnes également, et dans une des cases d'une de ces grid, j'ai placé un autre stackpanel d'une couleur différente.

    Problème : impossible de voir ce dernier stakpanel.
    Je pense même que le soucis vient de la grid qui l'englobe, mais je n'en suis pas certain et je ne vois pas l'origine du problème.

    Voici le code (j'ai mis un commentaire au dessus du stackpanel qui ne s'affiche pas)

    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
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    <Window x:Class="TestGrid.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            Title="MainWindow" Height="350" Width="525">
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition />
                <ColumnDefinition />
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition />
                <RowDefinition />
            </Grid.RowDefinitions>
            <StackPanel Grid.Column="0" Grid.Row="0" Background="Blue">
                <Grid ShowGridLines="True">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition />
                        <ColumnDefinition />
                    </Grid.ColumnDefinitions>
                    <Grid.RowDefinitions>
                        <RowDefinition />
                        <RowDefinition />
                    </Grid.RowDefinitions>
                    <!--Celui là ne s'affiche pas. Pourquoi?-->
                    <StackPanel Grid.Row="1" Grid.Column="1" Background="YellowGreen" />
                </Grid>
            </StackPanel>
            <StackPanel Grid.Column="1" Grid.Row="0" Background="Crimson">
                <Grid ShowGridLines="True">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition />
                        <ColumnDefinition />
                    </Grid.ColumnDefinitions>
                    <Grid.RowDefinitions>
                        <RowDefinition />
                        <RowDefinition />
                    </Grid.RowDefinitions>
                </Grid>
            </StackPanel>
            <StackPanel Grid.Column="0" Grid.Row="1" Background="Green">
                <Grid ShowGridLines="True">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition />
                        <ColumnDefinition />
                    </Grid.ColumnDefinitions>
                    <Grid.RowDefinitions>
                        <RowDefinition />
                        <RowDefinition />
                    </Grid.RowDefinitions>
                </Grid>
            </StackPanel>
            <StackPanel Grid.Column="1" Grid.Row="1" Background="Yellow">
                <Grid ShowGridLines="True">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition />
                        <ColumnDefinition />
                    </Grid.ColumnDefinitions>
                    <Grid.RowDefinitions>
                        <RowDefinition />
                        <RowDefinition />
                    </Grid.RowDefinitions>
                </Grid>
            </StackPanel>
     
        </Grid>
    </Window>
    Je travaille avec VS2012 avec le framework 4.5

    Merci d'avance si vous avez une idée
    A faire et à défaire on finit par ne plus rien faire.

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur C#
    Inscrit en
    Avril 2011
    Messages
    348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur C#
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2011
    Messages : 348
    Points : 191
    Points
    191
    Par défaut
    tu as donc mis dans stackpanel ta grid avec VerticalAlignement en Stretch

    Vu qu'il n'y a aucun élément dedans, Height de la grid vaut 0 puisque tu te trouve dans un stack panel.

    J'ai essayer betement d'ajouter un button dans le stackpanel de la grid du stackpanel de grid :


  3. #3
    Membre habitué Avatar de cynferdd
    Profil pro
    Analyste Développeur .Net, PHP, SQL Server
    Inscrit en
    Avril 2003
    Messages
    154
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Analyste Développeur .Net, PHP, SQL Server

    Informations forums :
    Inscription : Avril 2003
    Messages : 154
    Points : 190
    Points
    190
    Par défaut
    Merci pour cette réponse .

    Bon au final, après plusieurs tests j'en suis arrivé à la conclusion, que la gestion de la taille est décidément trop différente entre une grid et un stackpanel.

    Je suis donc parti sur une présentation 100% Grid, et plus aucun soucis.
    A faire et à défaire on finit par ne plus rien faire.

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

Discussions similaires

  1. [JTable] les noms des colonnes de s'affichent pas
    Par macben dans le forum Composants
    Réponses: 6
    Dernier message: 25/04/2008, 11h03
  2. Le résultat de Print ne s'affiche pas...
    Par Red Bull dans le forum Langage
    Réponses: 9
    Dernier message: 15/06/2006, 18h56
  3. Réponses: 3
    Dernier message: 22/03/2004, 16h49
  4. Les classes ne s'affichent pas
    Par karl3i dans le forum MFC
    Réponses: 8
    Dernier message: 26/01/2004, 14h52
  5. [MFC] Ces fenêtres qui ne s'affichent pas..
    Par Davide dans le forum MFC
    Réponses: 3
    Dernier message: 19/11/2003, 11h30

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