我的wpf应用程序中有一个media元素,其中包含一个加载gif。当用户选择长时间运行的进程时,它基本上显示一个加载器gif,让用户知道进程正在运行。我想要做的是在长时间运行的进程停止运行后禁用它。我在下面列出了XAML和流程结束事件。另外,主要部分,这就是我如何启动gif并停止gif。那里我可能错了。
loadGif.Play();
// Long running process(s)
loadGif.Pause();
loadGif.Close();
以下XAML:
<MediaElement Name="loadGif" HorizontalAlignment="Left" LoadedBehavior="Manual" MediaEnded="process_Ended" Height="22" Margin="609,226,0,0" VerticalAlignment="Top" Width="31" RenderTransformOrigin="-0.258,0.523" Source="C:\\ajax-loader.gif"/>
流程结束:
private void process_Ended(object sender, RoutedEventArgs e)
{
loadGif.Position = new TimeSpan(0, 0, 1);
loadGif.Play();
}
另外,我忘了提到现在发生的事情,此刻,当它开始时,GIF开始,并且在完成过程之后,它会消失并且黑色正方形占据其位置。由于我的应用程序的背景是白色的,它只是在处理完成后坐在那里的一个小黑盒子。从本质上讲,媒体元素点全黑。谢谢你的帮助!
答案 0 :(得分:0)
将Visibility
的{{1}}设置为MediaElement
或Collapsed
,具体取决于您希望布局如何工作。
Hidden