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 :

Redimensionner automatiquement mes controles [Débutant]


Sujet :

Windows Presentation Foundation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut Redimensionner automatiquement mes controles
    Bonjour,

    J'ai une fenêtre wpf avec 3 contrôles (2 combobox et un datePicker) comment les redimensionner ou de docker les éléments automatiquement quand l'utilisateur agrandit la fenêtre ?

    Je voudrais que mes 3 contrôles restent en haut mais qu'ils prennent toute la place en horizontal.

    Pour le moment les 3 controles sont dans un DockPanel, mais seul le dernier controle sur la gauche est redimensionner, est-ce que c'est possible d'avoir le même comportement mais avec les contrôles ?

    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
     
    <Window x:Class="WpfApplication1.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">
        <DockPanel>
            <ComboBox x:Name="cbRobot" HorizontalAlignment="Stretch"
    	    Margin="10,10,0,0"
    	    VerticalAlignment="Top"
    	    Width="120" Loaded="ComboBox_Loaded"
    	    SelectionChanged="ComboBox_SelectionChanged"/>
     
            <ComboBox x:Name="cbAlerte" HorizontalAlignment="Stretch"
    	    Margin="10,10,0,0"
    	    VerticalAlignment="Top"
    	    Width="120" Loaded="ComboBoxTypeALerte_Loaded"
    	    SelectionChanged="ComboBoxTypeALerte_SelectionChanged"/>
     
            <DatePicker x:Name="datePickerLog" HorizontalAlignment="Stretch"
    		    Margin="10,10,0,0"
    		    VerticalAlignment="Top"
    		    SelectedDateChanged="DatePicker_SelectedDateChanged"/>
        </DockPanel>
     
    </Window>

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Par défaut
    oui c'est possible
    soit tu utilise un stackpanel
    soit tu met lastfill... a false sur le dockpanel
    evidement pour chaque control tuy met
    dockpanel.dock="top"

    mais ca va vite ressembler a un stackpanel

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut
    Bonjour,

    J'ai essayé d'utiliser le dockpanel avec lastChildFill = false mais ça ne fonctionne pas du tout, pour rappel je voudrais que mes 3 controles se redimensionne en fonction de la MainForm

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 562
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 562
    Par défaut
    fait ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <DockPanel Margin="2" LastChildFill="false">
            <ComboBox x:Name="cbRobot" Margin="2" DockPanel.Dock="Top" />
     
            <ComboBox x:Name="cbAlerte" Margin="2" DockPanel.Dock="Top"/>
     
            <DatePicker x:Name="datePickerLog" Margin="2" DockPanel.Dock="Top"/>
        </DockPanel>

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut
    Merci pour ton aide mais les contrôles sont l'un en dessous de l'autre, moi je voudrais qu'ils soient l'un à coté de l'autre et que ceux-ci puisse se redimensionner automatiquement.

    Bàt

  6. #6
    Membre émérite Avatar de yonpo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2010
    Messages : 617
    Par défaut
    Très simple à faire avec une grille :

    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
     
    <Grid>
        <Grid.RowDefinitions>
        	<RowDefinition/>
        	<RowDefinition Height="25"/>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
        	<ColumnDefinition Width="*"/>
        	<ColumnDefinition Width="*"/>
        	<ColumnDefinition Width="*"/>
        </Grid.ColumnDefinitions>
        <Button Content="Button" Width="Auto"/>
        <Button Content="Button" Grid.Column="1" Width="Auto"/>
        <Button Content="Button" Grid.Column="2" Width="Auto"/>        
    </Grid>

    Les contrôles prendront toute la largeur (à part égale ici) quand la fenêtre changera de taille.

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

Discussions similaires

  1. Redimensionnement automatique des controls dans un userform
    Par patricktoulon dans le forum Général VBA
    Réponses: 81
    Dernier message: 08/10/2019, 16h48
  2. Réponses: 2
    Dernier message: 29/03/2014, 19h21
  3. Réponses: 0
    Dernier message: 05/02/2009, 15h10
  4. Je voudrais que mes images soit redimensionné automatiquement.
    Par ghostfile dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 20/02/2008, 18h29
  5. comment redimensionner automatiquement mes controles
    Par pierrot67 dans le forum Delphi
    Réponses: 3
    Dernier message: 01/11/2006, 14h59

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