2009-07-28 5 views
1

...Silverlight Grille Comme le titre ne dit pas remplir horizontalement dans HyperlinkButton

<Grid> 
    <HyperlinkButton x:Name="Link" Background="Green"> 
     <Grid Background="Red"> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="Auto" /> 
       <ColumnDefinition /> 
      </Grid.ColumnDefinitions> 
      <Grid.RowDefinitions> 
       <RowDefinition Height="Auto" /> 
       <RowDefinition Height="12" /> 
      </Grid.RowDefinitions> 
      <Image x:Name="AvatarImage" Style="{StaticResource AvatarStyle}" Grid.Column="0" Grid.Row="0" /> 
      <StackPanel Grid.Column="1" HorizontalAlignment="Stretch"> 
       <TextBlock Text="New Topic" Style="{StaticResource ItemTypeStyle}" /> 
       <TextBlock x:Name="Title" Style="{StaticResource HeadlineStyle}" TextWrapping="Wrap" /> 
       <TextBlock x:Name="SubText" Style="{StaticResource TextStyle}" TextWrapping="Wrap" /> 
      </StackPanel> 
      <TextBlock x:Name="TimeStampText" Grid.ColumnSpan="2" Grid.Row="1" Style="{StaticResource TimeStampStyle}" /> 
     </Grid> 
    </HyperlinkButton> 
</Grid> 

La grille de fond rouge ne sera pas remplir toute HyperlinkButton vert. J'ai essayé de régler son alignement sur "Stretch" mais cela n'a aucun effet. Tirez-le hors du lien, et sans surprise, il ne remplit aucun problème. Suggestions?

Répondre

0

Ugh ... c'était simple, en quelque sorte. HyperlinkButton a une propriété HorizontalContentAlignment, qui doit être définie pour s'étirer.

Cette propriété supplémentaire permettant d'obtenir le comportement de mise en page cohérent normalement trouvé sur HorizontalAlignement sur les objets enfants est étrange. Des trucs bizarres comme ça, c'est pas cool.

Questions connexes