2009-07-28 13 views
1

Wie der Titel schon sagt ...Silverlight Grid füllt nicht horizontal in Hyperlink

<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> 

Der rote Hintergrund Raster wird nicht in dem gesamten grünen Hyperlink füllen. Ich habe versucht, seine Ausrichtung auf "Stretch" zu setzen, aber es hat keine Wirkung. Ziehen Sie es aus der Verbindung, und nicht überraschend, es füllt kein Problem. Vorschläge?

Antwort

0

Ugh ... das war einfach, irgendwie. HyperlinkButton hat eine HorizontalContentAlignment-Eigenschaft, die auf Stretch festgelegt werden musste.

Diese zusätzliche Eigenschaft, um das konsistente Layoutverhalten zu erreichen, das normalerweise bei HorizontalAlignement für untergeordnete Objekte gefunden wird, ist merkwürdig. Weird Sachen wie das ist so nicht cool.