2010-05-14 7 views
2

Je travaille sur un formulaire de données dans Silverlight 4 et je voudrais regrouper les éléments par section, avec un titre pour chacun. Le titre consiste en un TextBlock suivi d'une ligne horizontale. La ligne s'exécute jusqu'au bord du formulaire.Afficher une ligne après un TextBlock dans Silverlight

J'ai essayé les éléments suivants (de ce fil: http://forums.silverlight.net/forums/p/77813/183885.aspx), sans succès:

<StackPanel Orientation="Horizontal"/> 
    <TextBlock Text="Section title" /> 
    <Line X1="0" Y1="0" X2="1" Y2="0" Stretch="Fill" Stroke="Black" /> 
</StackPanel> 

Toute idée pourquoi cela ne fonctionne pas?

Merci!

Répondre

7

Pourquoi ne pas utiliser la frontière avec une hauteur de 1

+0

Oui ... Cela fonctionne! (à l'intérieur d'une grille, pas un StackPanel) –

+0

Cela fonctionnera dans un panneau de pile aussi, vous avez probablement juste besoin de définir la taille. La grille définit probablement la largeur de la bordure pour vous. –

+1

add HorizontalAlignment = "Stretch" au panneau de la pile – David

0

J'étais curieux de connaître votre article, alors je l'ai essayé moi-même. Je n'ai pas pu obtenir la ligne pour s'étirer également en utilisant un StackPanel. Bien que, j'ai pu le faire fonctionner avec une grille:

<Grid x:Name="LayoutRoot" Background="White"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="20"/> 
    </Grid.RowDefinitions> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="100"/> 
     <ColumnDefinition/> 
    </Grid.ColumnDefinitions> 

    <TextBlock Grid.Row="0" Grid.Column="0" Text="Section title" HorizontalAlignment="Right" VerticalAlignment="Center" /> 
    <Line Grid.Row="0" Grid.Column="1" X1="0" Y1="0" X2="1" Y2="0" Stretch="Fill" Stroke="Black" StrokeThickness="1" /> 
</Grid> 
+0

J'ai essayé votre code dans une fenêtre enfant. Il rend bien dans le concepteur XAML. À l'exécution cependant, la fenêtre enfant remplit tout l'écran (horizontalement). Solution: définissez une largeur/hauteur fixe sur le contrôle ChildWindow ... ce qui n'est pas génial. Je n'ai pas trouvé un moyen de le faire fonctionner sans dimensions codées en dur ... (la largeur de la deuxième colonne fonctionne également). –

Questions connexes