Silverlight网格不会在HyperlinkBut​​ton中水平填充

时间:2009-07-28 18:14:32

标签: silverlight-3.0

正如标题所说......

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

红色背景网格不会填充整个绿色HyperlinkBut​​ton。我试图将其对齐设置为“Stretch”,但它没有任何效果。把它拉出链接,毫不奇怪,它没有问题。建议?

1 个答案:

答案 0 :(得分:0)

呃......这很简单,有点儿。 HyperlinkBut​​ton有一个Horizo​​ntalContentAlignment属性,必须设置为stretch。

这个额外的属性实现了通常在子对象的Horizo​​ntalAlignement上找到的一致布局行为,这很奇怪。像这样奇怪的东西太酷了。