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 :

ma Form est lente à charger à cause des stackpanel dans mon grid apparement


Sujet :

Windows Presentation Foundation

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2006
    Messages : 142
    Points : 74
    Points
    74
    Par défaut ma Form est lente à charger à cause des stackpanel dans mon grid apparement
    Bonjour,

    Je charge une fenetre qui contient un datagrid, mais celle ci est tres longue à charger.

    De mes recherches se serait à cause des stackpanel à répétition.
    Je les utilises pour mettre plusieurs controle à la verticale.

    il existe apparement le "VirtualizingStackPanel" Mais que je n'arrive pas à faire fonctionner, car il me semble qu'il ne faut que des données liées.

    J'essaie de faire l'equivalent avec le <grid> mais je n'y arrive pas non plus.

    Y aurait il une alternative à ce stackpanel qui consomme moins ?


    Code xaml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
     
             <DataGridTemplateColumn Header="" Width="SizeToCells" IsReadOnly="True" >
                        <DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                                <StackPanel>
                                    <Label Content="Expéditeur :"  FontWeight="Bold" Padding="5,5,0,0" />
                                    <Label Content="{Binding expediteur1}" Padding="5,5,0,0"  />
                                    <Label BorderBrush="Black"  BorderThickness="1px"  Width="150px" Height="2px" />
                                    <Label Content="Destinataire :"  FontWeight="Bold" Padding="5,0,0,0" />
                                    <Label Content="{Binding destinataire1}" Padding="5,5,0,0"  />                          
                                </StackPanel>
                            </DataTemplate>
                        </DataGridTemplateColumn.CellTemplate>
                    </DataGridTemplateColumn>

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2009
    Messages
    2 025
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2009
    Messages : 2 025
    Points : 5 462
    Points
    5 462
    Par défaut
    Dans quoi est contenu ce datagrid?
    Est-ce que en mettant juste une grid à la place du stackpanel dans le template de cellule le problème est résolu?

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2006
    Messages : 142
    Points : 74
    Points
    74
    Par défaut
    Le datagrid est contenu dans le <window><grid><datargrid>

    J'aimerais mettre juste un grid à la place du stackpanel, mais je n'arrive pas a positionner les éléments les uns en dessous de l'autres.

    Merci.

  4. #4
    Expert confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2009
    Messages
    2 025
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2009
    Messages : 2 025
    Points : 5 462
    Points
    5 462
    Par défaut
    En définnissant des rows à la grid!

    Code xaml : 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
    <DataGridTemplateColumn Header="" Width="SizeToCells" IsReadOnly="True" >
                        <DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                              <Grid>
            <Grid.RowDefinitions>
                <RowDefinition />
                <RowDefinition />
                <RowDefinition />
                <RowDefinition />
            </Grid.RowDefinitions>
     
            <Label Content="Expéditeur :"  FontWeight="Bold" Padding="5,5,0,0" Grid.Row="0" />
            <Label Content="{Binding expediteur1}" Padding="5,5,0,0"  Grid.Row="1"/>
            <Label BorderBrush="Black"  BorderThickness="1px"  Width="150px" Height="2px" Grid.Row="2" />
            <Label Content="Destinataire :"  FontWeight="Bold" Padding="5,0,0,0" Grid.Row="3" />
            <Label Content="{Binding destinataire1}" Padding="5,5,0,0"  Grid.Row="4"/>
    </Grid>
                            </DataTemplate>
                        </DataGridTemplateColumn.CellTemplate>
                    </DataGridTemplateColumn>

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2006
    Messages : 142
    Points : 74
    Points
    74
    Par défaut
    J'avais testé qqchose dans ce genre, mais j'ai pas réussi à avoir le résultat là

    A priori, c'est ce que je souhaite.

    Je laisse le post ouvert pour le moment, pour certifié le résultat et graphiquement et pour mon soucis de vitesse.

    Je te remercie.

  6. #6
    Expert confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2009
    Messages
    2 025
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2009
    Messages : 2 025
    Points : 5 462
    Points
    5 462
    Par défaut
    Il manque juste une rowDéfinition .

  7. #7
    Membre régulier
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2006
    Messages : 142
    Points : 74
    Points
    74
    Par défaut
    lol c'est mal de se moquer !

    Bon ben mon histoire de ralentissement ne venais pas que des stackpanels, mais tout simplement d'une mauvaise requete.

    Je fesais deux fois la liaison entre mes tables :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ...
       " WHERE    p.id_chantier = c.id_chantier AND " +
       " p.id_pile = omd.id_pile AND " +
       " p.id_pile = omd.id_pile AND" +
    ...
    et apparement SQL n'aime pas quand on lui double les jointures...

    Merci de ton aide en tout cas.




    PS : ah ouais à l'école il disais que le copier coller c'etait mal, ben il avait raison, perdre du temps sur ce genre de bétise génial.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 05/03/2015, 22h00
  2. Réponses: 2
    Dernier message: 20/01/2010, 02h05
  3. Réponses: 21
    Dernier message: 05/12/2007, 16h32
  4. Réponses: 3
    Dernier message: 03/04/2006, 18h30
  5. Importer via asp.net c# des variables dans mon namespace xsl
    Par akaii dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/01/2006, 08h41

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