在我的xaml文件中,我有两张图片:
<Grid x:Name="ImageGrid" >
<Image Source="Images/FlightSearchImg.png"></Image>
</Grid>
<Grid x:Name="ParisLive">
<Image Source="Images/ServiceTileImg.png"></Image>
</Grid>
我需要使用计时器来交替图像的可见性。 如何显示image1并隐藏image2 for 5 secondes,之后显示image2并隐藏image1 5秒钟?
答案 0 :(得分:1)
只需创建一个计时器,当它达到5000毫秒时切换图像和。
设置变量......
// Timer Stuff
static Boolean stopped = true;
static long dd = 0, hh = 0, mm = 0, ss = 0, ms = 0, gtdd = 0, gthh = 0, gtmm = 0, gtss = 0;
static Stopwatch stopwatch = new Stopwatch();
Timer timer;
bool ShowImage1 = true;
准备好后启动计时器。注意updateDisplay函数,我们接下来会添加它。
stopwatch.Start();
timer = new Timer(new TimerCallback(updateDisplay), AdventureTimer, 0, 100);
创建updateDisplay函数。在这里,您将检查要显示的图像。
public void updateDisplay(Object displayBlock)
{
if (stopwatch.ElapsedMilliseconds >= 5000) {
Dispatcher.BeginInvoke(new Action(ToggleImage);
}
}
创建一个切换图像的功能。
public void ToggleImage()
{
stopwatch.Reset();
if (ShowImage1 == true)
{
ImageGrid.Visibility = Visibility.Visible;
ParisLive.Visibility = Visibility.Collapsed;
ShowImage1 = false;
}
else
{
ImageGrid.Visibility = Visibility.Collapsed;
ParisLive.Visibility = Visibility.Visible;
ShowImage1 = true;
}
}
答案 1 :(得分:0)
如果您不想使用XAML路线,只需使用Dispatch Timer即可实现。您只需每5分钟设置一次图像源,然后循环浏览每个Uri。