WPF信贷的作用问题:故事情节向动画在这种情况下,延伸窗口的高度
-
23-08-2019 - |
题
这是我第一WPF项目。我试图得到一个滚动的信贷的作用有一堆的旗帜形PNG的叠在一起的其他垂直。
我目前的做法是有一大堆的图片在这种情况下.每一个图像是约1024x150,并有约30图像。他们叠垂直。
我开始在这种情况下,在0,200,所以大多数是关闭幕。然后,我有一个故事情节(创造在混合),意味着它Y轴线上,所有的方式。动画的开始,但是 该问题是该部在这种情况下,这是最初关闭画面从来没有油漆和保持切断。 只有最初可见区域在这种情况下,动画.
这感觉就像在这种情况下,需要重新粉刷过。是这种方法曾经去工作或做我需要做一些完全不同?
摘省略窗和窗口。触发器:
<Window.Resources>
<Storyboard x:Key="sb_HR">
<DoubleAnimationUsingKeyFrames
BeginTime="00:00:00"
Storyboard.TargetName="StackPanel1"
Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[3].(TranslateTransform.Y)">
<SplineDoubleKeyFrame KeyTime="00:00:30" Value="-1950"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</Window.Resources>
<Grid x:Name="LayoutRoot">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1024" />
</Grid.ColumnDefinitions>
<StackPanel Name="StackPanel1" Margin="0,0,0,0" RenderTransformOrigin="0.5,0.5">
<StackPanel.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1"/>
<SkewTransform AngleX="0" AngleY="0"/>
<RotateTransform Angle="0"/>
<TranslateTransform X="0" Y="0"/>
</TransformGroup>
</StackPanel.RenderTransform>
<Image Margin="0,50,0,0" Source="title.png" x:Name="title" Height="150" VerticalAlignment="Top" Stretch="Uniform"></Image>
<Image Margin="0,50,0,0" Source="1.png" x:Name="V1_L1" Height="150" VerticalAlignment="Top" Stretch="Uniform" ></Image>
<Image Margin="0,50,0,0" Source="2.png" x:Name="V1_L2" Height="150" VerticalAlignment="Top" Stretch="Uniform" ></Image>
<Image Margin="0,50,0,0" Source="3.png" x:Name="V1_L3" Height="150" VerticalAlignment="Top" Stretch="Uniform" ></Image>
<Image Margin="0,50,0,0" Source="4.png" x:Name="V1_L4" Height="150" VerticalAlignment="Top" Stretch="Uniform" ></Image>
<Image Margin="0,50,0,0" Source="5.png" x:Name="V1_L5" Height="150" VerticalAlignment="Top" Stretch="Uniform" ></Image>
<Image Margin="0,50,0,0" Source="6.png" x:Name="V1_L6" Height="150" VerticalAlignment="Top" Stretch="Uniform" ></Image>
<Image Margin="0,50,0,0" Source="7.png" x:Name="V1_L7" Height="150" VerticalAlignment="Top" Stretch="Uniform" ></Image>
<Image Margin="0,50,0,0" Source="8.png" x:Name="V1_L8" Height="150" VerticalAlignment="Top" Stretch="Uniform" ></Image>
</StackPanel>
</Grid>
编辑: 我已经找到ClipToBounds,并试图设置为虚假的,但是它已经是错误的。有人MSDN上的具有同样的问题,因为我在 http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/5764645e-cb4f-4137-a525-4e8698ee43b6 -我不认为有一个解决方案。
解决方案
我看到两个东西,你可以尝试出:
使用ScrollViewer与残疾滚动围绕在这种情况下.可悲的是,你不能动的滚动偏移量直接,因此将需要建立什么样的一个定时器编码后面,并呼ScrollToVerticalOffset()周期性。
尝试把在这种情况下,在一个画和动画画布上。顶部(设在这种情况下),而不是RenderTransforms.
我将提供一个代码样本如果你需要一个。
安德烈*
其他提示
我同意安德烈,只是使有滚动条禁用一个新的列表框类型。
您可以动画滚动偏移量,我知道了发生在一个自定义控件我正在写现在。这是一个函数类中的列表框:
Duration animationDuration = new Duration(new TimeSpan(0, 0, 0, 0, _scrollSpeed));
DoubleAnimation animateHscroll = new DoubleAnimation(thisScrollViewer.HorizontalOffset, TargetHorizontalOffset, animationDuration);
thisScrollViewer.BeginAnimation(HorizontalScrollOffsetProperty, animateHscroll);
不隶属于 StackOverflow