如何在WPF中旋转Grid背景图像?

Sagotharan

我想在WPF中旋转Grid背景图像。我有用于图像旋转的动画代码。但是当我在网格背景中实现时,Image不被接受,因此Imagebrush仅被接受。

  <Grid.Background>
            <ImageBrush ImageSource="../Images/1.jpg" Stretch="UniformToFill" TileMode="Tile"/>
  </Grid.Background>

我无法在WPF中实现以下动画代码。

<Canvas ClipToBounds="True" >
                <Image Source="/Images/1.jpg" Width="600"  >
                    <Image.RenderTransform>
                        <RotateTransform x:Name="TransRotate" />
                    </Image.RenderTransform>
                    <Image.Triggers>
                        <EventTrigger RoutedEvent="Image.Loaded">
                            <BeginStoryboard>
                                <Storyboard TargetProperty="Angle">
                                    <DoubleAnimation Storyboard.TargetName="TransRotate" Storyboard.TargetProperty="Angle" By="40" Duration="0:0:10" AutoReverse="True" RepeatBehavior="Forever" />
                                    <DoubleAnimation Storyboard.TargetName="TransRotate" Storyboard.TargetProperty="Angle" By="-40" Duration="0:0:15" AutoReverse="True" RepeatBehavior="Forever" />
                                </Storyboard>
                            </BeginStoryboard>
                        </EventTrigger>
                    </Image.Triggers>
                </Image>
            </Canvas>

编辑1-

如果我将图像设置为网格中的内容,则第0行仅显示图像动画。

<Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="*" />
            <RowDefinition Height="*" />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>

        <Canvas ClipToBounds="True" > 
        <Image Name="logo" Source="/Images/1.jpg" Width="800"  >
            <Image.RenderTransform>
                <RotateTransform x:Name="TransRotate" />
            </Image.RenderTransform>
            <Image.Triggers>
                <EventTrigger RoutedEvent="Image.Loaded">
                    <BeginStoryboard>
                        <Storyboard TargetProperty="Angle">
                            <DoubleAnimation Storyboard.TargetName="TransRotate" Storyboard.TargetProperty="Angle" By="40" Duration="0:0:10" AutoReverse="True" RepeatBehavior="Forever" />
                            <DoubleAnimation Storyboard.TargetName="TransRotate" Storyboard.TargetProperty="Angle" By="-40" Duration="0:0:15" AutoReverse="True" RepeatBehavior="Forever" />
                        </Storyboard>
                    </BeginStoryboard>
                </EventTrigger>
            </Image.Triggers>
        </Image>
        </Canvas>

        <Border Grid.Row="0" Height="180" >
            <Image Source="Images/01.jpg" Height="100" />
        </Border>

        <Border Grid.Row="1" Height="180">
            <Image Source="Images/01.jpg" Height="100" />
        </Border>

        <Border Grid.Row="2" Height="180">
            <Image Source="Images/01.jpg" Height="100" />
        </Border>
    </Grid>

在此处输入图片说明

在此处输入图片说明

克莱门斯

您可以像下面的示例一样旋转ImageBrush。您可能还需要设置RotateTransformCenterXCenterY属性。

<Grid>
    <Grid.Background>
        <ImageBrush ImageSource="C:\Users\Public\Pictures\Sample Pictures\Koala.jpg"
                    Stretch="UniformToFill">
            <ImageBrush.Transform>
                <RotateTransform/>
            </ImageBrush.Transform>
        </ImageBrush>
    </Grid.Background>
    <Grid.Triggers>
        <EventTrigger RoutedEvent="Loaded">
            <BeginStoryboard>
                <Storyboard>
                    <DoubleAnimation
                        Storyboard.TargetProperty="Background.Transform.Angle"
                        By="40" Duration="0:0:10"
                        AutoReverse="True" RepeatBehavior="Forever"/>
                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </Grid.Triggers>
</Grid>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Android中禁止背景图片旋转

来自分类Dev

如何在WPF应用程序中设置所有窗口的背景图像

来自分类Dev

如何在WPF应用程序中设置和放置背景图像

来自分类Dev

如何在旋转图像CSS或Javascript时使背景图像填充空白(在div上)?

来自分类Dev

如何在CSS中组合背景图像+线性渐变?背景图像上的线性渐变

来自分类Dev

如何在 Xamarin 中修复“ListView 中的背景图像”?

来自分类Dev

如何在JavaFx中添加多个背景图像

来自分类Dev

如何在倾斜图层(CSS)中倾斜背景图像?

来自分类Dev

如何在Java Swing中设置按钮的背景图像

来自分类Dev

如何在Java Applet中设置背景图像?

来自分类Dev

如何在reveal.js中定位背景图像?

来自分类Dev

如何在NetBeans中为JPanel设置背景图像?

来自分类Dev

CSS:如何在div中模糊背景图像?

来自分类Dev

如何在Codeigniter 3中设置背景图像

来自分类Dev

如何在MasterDetailPage菜单中设置背景图像

来自分类Dev

如何在Flutter中模糊DecorationImage的背景图像?

来自分类Dev

如何在LibreOffice Writer 5中设置背景图像?

来自分类Dev

如何在偏斜层(CSS)中偏斜背景图像?

来自分类Dev

如何在Nautilus 3.4.2中添加背景图像

来自分类Dev

如何在指令中重新加载CSS背景图像

来自分类Dev

如何在MainScreen菜单(此处)中添加背景图像?

来自分类Dev

如何在Android中的形状的右侧设置背景图像

来自分类Dev

CSS:如何在div中模糊背景图像?

来自分类Dev

如何在Firefox中更改主页的背景图像?

来自分类Dev

如何在可可 NSView 中设置背景图像

来自分类Dev

如何在html中设置高度和背景图像

来自分类Dev

如何在 CSS 中为背景图像设置动画?

来自分类Dev

不确定如何在 Tkinter 中设置背景图像

来自分类Dev

如何在角度 6 中设置背景图像?

Related 相关文章

  1. 1

    如何在Android中禁止背景图片旋转

  2. 2

    如何在WPF应用程序中设置所有窗口的背景图像

  3. 3

    如何在WPF应用程序中设置和放置背景图像

  4. 4

    如何在旋转图像CSS或Javascript时使背景图像填充空白(在div上)?

  5. 5

    如何在CSS中组合背景图像+线性渐变?背景图像上的线性渐变

  6. 6

    如何在 Xamarin 中修复“ListView 中的背景图像”?

  7. 7

    如何在JavaFx中添加多个背景图像

  8. 8

    如何在倾斜图层(CSS)中倾斜背景图像?

  9. 9

    如何在Java Swing中设置按钮的背景图像

  10. 10

    如何在Java Applet中设置背景图像?

  11. 11

    如何在reveal.js中定位背景图像?

  12. 12

    如何在NetBeans中为JPanel设置背景图像?

  13. 13

    CSS:如何在div中模糊背景图像?

  14. 14

    如何在Codeigniter 3中设置背景图像

  15. 15

    如何在MasterDetailPage菜单中设置背景图像

  16. 16

    如何在Flutter中模糊DecorationImage的背景图像?

  17. 17

    如何在LibreOffice Writer 5中设置背景图像?

  18. 18

    如何在偏斜层(CSS)中偏斜背景图像?

  19. 19

    如何在Nautilus 3.4.2中添加背景图像

  20. 20

    如何在指令中重新加载CSS背景图像

  21. 21

    如何在MainScreen菜单(此处)中添加背景图像?

  22. 22

    如何在Android中的形状的右侧设置背景图像

  23. 23

    CSS:如何在div中模糊背景图像?

  24. 24

    如何在Firefox中更改主页的背景图像?

  25. 25

    如何在可可 NSView 中设置背景图像

  26. 26

    如何在html中设置高度和背景图像

  27. 27

    如何在 CSS 中为背景图像设置动画?

  28. 28

    不确定如何在 Tkinter 中设置背景图像

  29. 29

    如何在角度 6 中设置背景图像?

热门标签

归档