2009-12-09 13 views
6

J'ai une grille avec 4 boutons ... 1 rangée, 4 colonnes. Je cherche un moyen de regrouper visuellement les deux boutons sur la gauche des deux sur la droite. Je cherchais un moyen de le faire avec un séparateur, mais ça ne semble pas bien jouer avec Grid, préférant StackPanel.Séparateur WPF entre les boutons de grille

Est-ce le bon contrôle?
Si oui, comment fait-on la chose séparer les colonnes (peuplées de boutons dans ce cas)?

Merci.

Répondre

1

J'utilise habituellement le simple choix d'ajouter une colonne avec une largeur fixe entre les touches Vous pouvez réellement utiliser une couleur de fond différente ou insérer une image

+1

ouais, juste faire une ligne. Je suppose que cela fonctionne aussi bien. – Bob

+0

Où définissez-vous la couleur d'arrière-plan? Est-ce une sous-propriété sur l'une des propriétés de définition de colonne? – Bob

+0

vous pouvez ajouter un panneau et définir sa couleur de fond – Zied

6

Avez-vous essayé un GridSplitter?

<Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Height="*" /> 
     <ColumnDefinition Height="Auto" /> 
     <ColumnDefinition Height="100" /> 
     <ColumnDefinition Height="100" /> 
    </Grid.ColumnDefinitions> 
    <Button/> 
    <Button/> 
    <GridSplitter ResizeDirection="Columns" Grid.Column="2" Height="Auto" Width="4" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="0"/> 
    <Button/> 
</Grid> 
+0

non, je ne l'avais pas. Cela semble être trop pour une ligne. En outre, cet exemple provoque la redimensionnabilité du bouton précédent, ce qui n'est pas souhaitable. – Bob

+0

il y a une définition de colonne supplémentaire et il devrait être largeur au lieu de hauteur. –

1

Vous pouvez utiliser Separator si vous le stylisez correctement. Par défaut, il crée une ligne horizontale. Vous devez appliquer un style différent pour le rendre vertical. Voir ce post pour savoir comment le style comme une ligne verticale dans une grille WPF:

CodeProject discussion

La discussion mentionne également que StatusBar applique un certain style à Separator éléments, tant que vous ne les envelopper pas StatusBarItems. Peut-être que StackPanel fait quelque chose de similaire.

20

Au cas où quelqu'un d'autre tombe par hasard sur cette solution la plus facile:

<Separator Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" /> 
+0

Exactement ce dont j'avais besoin. Merci! – MuiBienCarlota

Questions connexes