【问题标题】:Moving background image exceeds boundary of Canvas移动背景图像超出画布边界
【发布时间】:2013-06-30 18:36:06
【问题描述】:

我的问题如下图:

当图像在背景中向左移动时,我不想在画布的红色边框之外看到它。换句话说,我希望红色框成为背景图像的一个窗口。

有没有办法隐藏红框之外的图像部分?

我的 xaml 如下:

<Grid Grid.Row="1" Margin="0,0,10,10">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="460*"/>
            <ColumnDefinition Width="668*"/>
        </Grid.ColumnDefinitions>
        <Canvas x:Name="battlefieldBackground" Grid.Column="1">
            <Canvas.Triggers>
                <EventTrigger RoutedEvent="Canvas.Loaded">
                    <BeginStoryboard>
                        <Storyboard Storyboard.TargetName="spaceBackground" Storyboard.TargetProperty="(Canvas.Left)">
                            <DoubleAnimation From="0" To="-3200" Duration="0:04:00" RepeatBehavior="Forever" AutoReverse="True"/>
                        </Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
            </Canvas.Triggers>
            <Image x:Name="spaceBackground" Source="Assets/SpaceBackground.jpg" Margin="0" Stretch="UniformToFill"/>
        </Canvas>
        <Border x:Name="battlefieldBorder" BorderThickness="3" Grid.Column="1" BorderBrush="#FF810000"/>
        <!-- Xaml portion for gray grid -->

【问题讨论】:

    标签: c# xaml windows-8


    【解决方案1】:

    您可以设置 Canvas 的 Clip 属性。

    【讨论】:

      猜你喜欢
      • 2011-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-22
      • 1970-01-01
      • 2010-10-23
      相关资源
      最近更新 更多