在Silverlight中设置图像到特定位置

时间:2010-10-16 17:25:04

标签: silverlight windows-phone-7

我正在开发WP7应用程序。在其中一个页面上我想要一个可供用户选择的问号。我遇到的麻烦就是把它放在一个固定的位置。如果房地产可用,我希望它一直在右下角。但是如果用户需要滚动,我也希望该项目也必须滚动。

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    ....
    <StackPanel Grid.Row="1">
        <Image Source="/Images/question_mark.png" Stretch="None" 
            VerticalAlignment="Bottom" HorizontalAlignment="Right" />
    </StackPanel>
</Grid>

那么如何在页面底部保留图像/按钮?我需要更改任何内容,以便在用户需要滚动时始终位于底部吗?感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

听起来您希望图像位于可滚动内容的底部。为此,请在StackPanel

中放置ScrollViewer
<Grid x:Name="LayoutRoot" Background="Transparent">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>

    <!--TitlePanel contains the name of the application and page title-->
    <StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
        <TextBlock x:Name="ApplicationTitle" Text="MY APPLICATION" Style="{StaticResource PhoneTextNormalStyle}"/>
        <TextBlock x:Name="PageTitle" Text="page name" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
    </StackPanel>

    <!--ContentPanel - place additional content here-->
    <ScrollViewer x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
        <StackPanel>
            <Rectangle Height="400" Fill="Brown" />
            <Rectangle Height="400" Fill="Green" />
            <Image Source="/Images/question_mark.png" Stretch="None"  
                VerticalAlignment="Bottom" HorizontalAlignment="Right" />
        </StackPanel>
    </ScrollViewer>
</Grid>