如何在Silverlight中更改文本块字符串上运行故事板?
我想知道如果文本块文本字符串被更改,是否有任何简单的技术来运行故事板。提前谢谢你 下面是用户控件的xaml,当TextBlock的Text属性更改时,该控件将设置项目不透明度的动画 这是使用PropertyChangedTrigger和ControlStoryboard操作导致的。这些项目来自使用Blend安装的DLL,但如果没有Blend,则可以单独安装:如何在Silverlight中更改文本块字符串上运行故事板?,silverlight,silverlight-4.0,Silverlight,Silverlight 4.0,我想知道如果文本块文本字符串被更改,是否有任何简单的技术来运行故事板。提前谢谢你 下面是用户控件的xaml,当TextBlock的Text属性更改时,该控件将设置项目不透明度的动画 这是使用PropertyChangedTrigger和ControlStoryboard操作导致的。这些项目来自使用Blend安装的DLL,但如果没有Blend,则可以单独安装: 下面是一个用户控件的xaml,当TextBlock的Text属性更改时,该控件将设置项目不透明度的动画 这是使用PropertyChang
下面是一个用户控件的xaml,当TextBlock的Text属性更改时,该控件将设置项目不透明度的动画 这是使用PropertyChangedTrigger和ControlStoryboard操作导致的。这些项目来自使用Blend安装的DLL,但如果没有Blend,则可以单独安装:
谢谢你的密码。太棒了。但是,我不会单击文本块。我将动态更新文本。我只需要在它发生时运行动画。这将是更容易在WPF,但我需要它是Silverlight。有什么想法吗?在这个例子中,只要“textBlock.Text”被更改,动画就会运行。为了演示,我只是在点击时更改它,但是它可以在任何地方更改。我有最新的SDK。我找不到交互/交互行为。我应该安装旧的SDK吗?谢谢。我终于能够添加交互和交互性DLL了。现在,它工作得很好。谢谢你的信息!非常感谢。没问题,很高兴我能帮忙!谢谢你的密码。太棒了。但是,我不会单击文本块。我将动态更新文本。我只需要在它发生时运行动画。这将是更容易在WPF,但我需要它是Silverlight。有什么想法吗?在这个例子中,只要“textBlock.Text”被更改,动画就会运行。为了演示,我只是在点击时更改它,但是它可以在任何地方更改。我有最新的SDK。我找不到交互/交互行为。我应该安装旧的SDK吗?谢谢。我终于能够添加交互和交互性DLL了。现在,它工作得很好。谢谢你的信息!非常感谢。没问题,很高兴我能帮忙!
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions"
x:Class="TextboxAnimation.MainPage"
Width="640" Height="480">
<UserControl.Resources>
<Storyboard x:Name="AnAnimation">
<DoubleAnimationUsingKeyFrames
Storyboard.TargetProperty="(UIElement.Opacity)"
Storyboard.TargetName="animationTextBlock">
<EasingDoubleKeyFrame KeyTime="0" Value="0"/>
<EasingDoubleKeyFrame KeyTime="0:0:1" Value="1"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</UserControl.Resources>
<StackPanel x:Name="LayoutRoot" Background="White">
<TextBlock x:Name="textBlock"
HorizontalAlignment="Left" Text="Click Me To Change Text"
MouseLeftButtonDown="TextBlockClicked">
<i:Interaction.Triggers>
<ei:PropertyChangedTrigger Binding="{Binding Text, ElementName=textBlock}">
<ei:ControlStoryboardAction Storyboard="{StaticResource AnAnimation}"/>
</ei:PropertyChangedTrigger>
</i:Interaction.Triggers>
</TextBlock>
<TextBlock
x:Name="animationTextBlock"
Text="Animate Me!" Margin="0,8,0,0" Opacity="0"/>
</StackPanel>
</UserControl>
int times = 0;
private void TextBlockClicked(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
times++;
textBlock.Text = String.Format("I've been clicked and changed {0} times!", times);
}