C# 混合对数据的影响
有没有办法对数据中的文本执行效果淡入>淡出>淡入表达式混合wpf 例如: 我有一个表,比如SQL,其中包含数据: 姓名:杰克 姓名:Jhon 姓名:Jade 我该怎么做,杰克将显示-5秒后->杰克将淡出,然后杰恩将淡入。。等等C# 混合对数据的影响,c#,wpf,expression-blend,C#,Wpf,Expression Blend,有没有办法对数据中的文本执行效果淡入>淡出>淡入表达式混合wpf 例如: 我有一个表,比如SQL,其中包含数据: 姓名:杰克 姓名:Jhon 姓名:Jade 我该怎么做,杰克将显示-5秒后->杰克将淡出,然后杰恩将淡入。。等等 我知道如何连接sql,如何编写c类并在wpf上使用它,但如何才能实现示例中的效果?如果有expression blend,可以创建情节提要并在情节提要中的不同时间设置不透明度。当应用到文本时,它将淡入淡出 可以挂接到,然后将文本设置为下一个人,然后重新启动动画。我认为该页
我知道如何连接sql,如何编写c类并在wpf上使用它,但如何才能实现示例中的效果?如果有expression blend,可以创建情节提要并在情节提要中的不同时间设置不透明度。当应用到文本时,它将淡入淡出
可以挂接到,然后将文本设置为下一个人,然后重新启动动画。我认为该页上的示例也会对您有所帮助。下面是一个实现此目标的示例 一个简单的数据模型
public class ModelList : List<string>
{
public ModelList()
{
Add("John");
Add("Jack");
Add("Sue");
}
public int CurrentIndex = 0;
public string CurrentItem
{
get
{
return this[CurrentIndex];
}
}
}
你的主窗口
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
void ContinueAnimation()
{
ModelList list = Resources["ModelList"] as ModelList;
if ( list.CurrentIndex < (list.Count -1))
{
list.CurrentIndex += 1;
Storyboard b = Resources["FadeOut"] as Storyboard;
b.Begin();
}
}
private void Start_Click(object sender, RoutedEventArgs e)
{
ContinueAnimation();
}
private void FadeOut_Completed(object sender, EventArgs e)
{
ContinueAnimation();
}
}
您的主窗口是xaml
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:app="clr-namespace:WpfApplication1"
Title="MainWindow"
Width="1000"
Height="1000">
<Window.Resources>
<app:ModelList x:Key="ModelList" />
<Storyboard x:Key="FadeOut" x:Name="FadeOut" Completed="FadeOut_Completed">
<DoubleAnimation Duration="0:0:0.5"
Storyboard.TargetName="MyLabel"
Storyboard.TargetProperty="Opacity"
To="0" />
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="MyLabel" Storyboard.TargetProperty="Text">
<DiscreteObjectKeyFrame KeyTime="0:0:0.5" Value="{Binding Source={StaticResource ModelList}, Path=CurrentItem}" />
</ObjectAnimationUsingKeyFrames>
<DoubleAnimation BeginTime="0:0:0.5"
Duration="0:0:1"
Storyboard.TargetName="MyLabel"
Storyboard.TargetProperty="Opacity"
To="1" />
</Storyboard>
</Window.Resources>
<StackPanel>
<TextBlock Name="MyLabel"
Width="100"
Height="24"
Background="AliceBlue"
Text="{Binding Source={StaticResource ModelList},
Path=CurrentItem}" />
<Button Name="Start"
Height="30"
HorizontalAlignment="Left"
Click="Start_Click">
Start
</Button>
</StackPanel>
</Window>
实际上,当我从数据中选择时,它总是选择一个名称。所以我需要为循环编写代码,并按照您在这里的建议执行。我是对的?还是有办法选择所有的名字?多漂亮的一个。我需要学习您编写的类,这太棒了。这些类需要什么名称空间?在我的示例项目中,我在WPFAApplication1名称空间中使用了它们。。。您选择的名称空间只是相应地更新xmlns:app