Nas*_*aer 8 wpf code-behind storyboard thickness windows-phone-7
我只是觉得我已经知道WPF和XAML语法是如何工作的...... wrooong.
我收到了消息:
'WithEvents' variables can only be typed as classes, interfaces or type parameters with class constraints.
Run Code Online (Sandbox Code Playgroud)
请问,你知道为什么这个语法错了吗?
我需要将单个值用作double.它稍后在代码隐藏中使用故事板.
问候

我只想用一个位置和大小的故事板为红色矩形设置动画.也许XAML无论如何都是正确的解决方案?

Lou*_*ann 18
要为厚度设置动画,请使用这样的故事板(来自msdn示例):
<BeginStoryboard>
<Storyboard>
<!-- BorderThickness animates from left=1, right=1, top=1, and bottom=1 to
left=28, right=28, top=14, and bottom=14 over one second. -->
<ThicknessAnimation
Storyboard.TargetProperty="BorderThickness"
Duration="0:0:1.5" FillBehavior="HoldEnd" From="1,1,1,1" To="28,14,28,14" />
</Storyboard>
</BeginStoryboard>
Run Code Online (Sandbox Code Playgroud)
实际上,要将值为"w,x,y,z"的任何属性设置为动画,请使用ThicknessAnimation
在我看来,你想要做的是将红色矩形向右移动.
在这种情况下,将整个事物放在一个Canvas并在红色矩形的位置使用DoubleAnimation.
无论哪种方式,您获得的错误并非来自您提供的一小段代码,如果您想要解决此问题,请提供更多代码.
编辑:由于厚度动画似乎在WP7上不可用,请尝试以下方法:
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetProperty="BorderThickness.Top"
Duration="0:0:1.5" To="15" />
<DoubleAnimation
Storyboard.TargetProperty="BorderThickness.Left"
Duration="0:0:1.5" To="25" />
</Storyboard>
</BeginStoryboard>
Run Code Online (Sandbox Code Playgroud)