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 :

Pourquoi mon user control ne fonctionne pas du tout ? [Débutant]


Sujet :

Windows Presentation Foundation

  1. #1
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut Pourquoi mon user control ne fonctionne pas du tout ?
    Bonjour,

    Tout d'abord, désolé si ma question est triviale et vous pique les yeux.
    Autodidacte, je ne trouve pas de documentation/tutorial qui réponde à mes question, et en mode tâtons, j'ai pas vraiment l'impression d'avancer...

    Alors voilà.
    J'ai en projet de faire une petite application qui permette de créer des appartements, des locataires, et de suivre les paiement et émettre des quittances de loyer.

    L'architecture retenue est :
    - Server WCF + SQL Server pour la partie traitements
    - Application Windows Universelle pour la partie GUI

    J'ai donc créé ma base de données, mes WebServices, tout va bien.

    Et je tente de les utiliser depuis mon programme Windows Universel.
    Et c'est le drame...

    Au démarrage, j'ai une page d'accueil, qui contient :
    - Un menu à gauche (bouton "hamburger", vulgaire copier/coller d'un article trouvé sur Google)
    - Une zone d'affichage à droite dans un "SplitView.Content"

    Voici donc ma page "MainPage.xaml"
    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
    21
    22
    23
    24
    25
     
    <Page x:Class="MagicAppartement.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:MagicAppartement" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d">
        <SplitView x:Name="MySplitView" DisplayMode="CompactOverlay" IsPaneOpen="False" CompactPaneLength="50" OpenPaneLength="200">
            <SplitView.Pane>
                <StackPanel Background="Gray">
                    <Button x:Name="HamburgerButton" FontFamily="Segoe MDL2 Assets" Content="&#xE700;" Width="50" Height="50" Background="Transparent" Click="HamburgerButton_Click"/>
                    <StackPanel Orientation="Horizontal">
                        <Button x:Name="btnAppartements" FontFamily="Segoe MDL2 Assets" Content="&#xE825;" Width="50" Height="50" Background="Transparent" Click="btnAppartements_Click"/>
                        <TextBlock Text="Appartements" FontSize="18" VerticalAlignment="Center" />
                    </StackPanel>
                    <StackPanel Orientation="Horizontal">
                        <Button x:Name="MenuButton2" FontFamily="Segoe MDL2 Assets" Content="&#xE10F;" Width="50" Height="50" Background="Transparent"/>
                        <TextBlock Text="Button 2" FontSize="18" VerticalAlignment="Center" />
                    </StackPanel>
                    <StackPanel Orientation="Horizontal">
                        <Button x:Name="MenuButton3" FontFamily="Segoe MDL2 Assets" Content="&#xE1D6;" Width="50" Height="50" Background="Transparent"/>
                        <TextBlock Text="Button 3" FontSize="18" VerticalAlignment="Center" />
                    </StackPanel>
                </StackPanel>
            </SplitView.Pane>
            <SplitView.Content>
                <Grid Background="Black" x:Name="PageContents" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
            </SplitView.Content>
        </SplitView>
    </Page>

    Et j'ai créé un UserControl dont voici le code XAML :
    Code xaml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <UserControl x:Class="MagicAppartement.AppartementTab" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:MagicAppartement" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d">
        <Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
            <TextBox x:Name="txtFilter" HorizontalAlignment="Stretch" Margin="10,10,110,10" TextWrapping="Wrap" Text="" VerticalAlignment="Top"/>
            <Button x:Name="btnSearch" Content="Recherche" HorizontalAlignment="Right" Margin="10,10,10,10" VerticalAlignment="Top" Width="90" Click="btnSearch_Click"/>
            <ListView x:Name="listeAppartements" HorizontalAlignment="Stretch" Margin="10,50,10,10" VerticalAlignment="Stretch" BorderThickness="2" BorderBrush="Black"/>
        </Grid>
    </UserControl>

    Dans Visual Studio, mon UserControl ressemble à ça :
    Nom : 2016-11-16_15h14_52.png
Affichages : 149
Taille : 103,4 Ko

    Dans la page principale, j'instancie mon UserControl et je le met dans mon SplitView.Content de la façon suivante :
    Code csharp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
            private void btnAppartements_Click(object sender, RoutedEventArgs e)
            {
                PageContents.Children.Clear();
     
                if (apptab == null)
                {
                    apptab = new AppartementTab();
                    apptab.HorizontalAlignment = HorizontalAlignment.Stretch;
                    apptab.VerticalAlignment = VerticalAlignment.Stretch;
                }
     
                PageContents.Children.Add(apptab);
            }

    Mais voilà... A la place, j'ai ça :
    Nom : 2016-11-16_15h18_56.png
Affichages : 148
Taille : 5,6 Ko

    A un moment, j'ai réussi à tout avoir... Mais sans savoir comment il était arrivé ni comment il était reparti, ça c'est remis à déconner...

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2009
    Messages
    2 056
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    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 056
    Par défaut
    Pour la liste elle n'a pas de couleur et s'il n'y a pas d'element il n'y pas de raison de la voir?
    Si tu utilises un background différent pour ton usercontrol que se passe t-il?

    Tu peux utiliser https://msdn.microsoft.com/en-us/library/mt270227.aspx l'inspecteur xaml pour voir en direct la composition de l'arbre, ce qui peut t'apprendre des choses.

  3. #3
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    Bon, ben en effet, le préfixe du titre n'est pas là pour rien.

    J'ai en effet fini par trouver ce qui clochait...
    Avec un fond rouge, je voyais tout, mais pas avec un fond noir... Normal, les contrôles étant transparents, noir sur noir ça marche pas des masses...

    Désolé pour la stupidité de la question...

    Bon, en même temps, ça me rassure, au final j'avais pas complètement tout faux ^^

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

Discussions similaires

  1. Pourquoi mon TRY..EXCEPT ne fonctionne pas ?
    Par clavier12AZQSWX dans le forum Général Python
    Réponses: 5
    Dernier message: 30/01/2014, 19h28
  2. Pourquoi mon code rotate ne fonctionne pas?
    Par PhilHype dans le forum jQuery
    Réponses: 6
    Dernier message: 04/11/2013, 12h13
  3. [C#] Pourquoi mon composant DCOM ne fonctionne t-il pas ?
    Par mimibobo dans le forum Services Web
    Réponses: 1
    Dernier message: 27/07/2006, 14h51
  4. Réponses: 2
    Dernier message: 13/05/2006, 00h01

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