如何在程序 运行 时禁用媒体元素 (.gif)
How to disable media element (.gif) while program is running
我的 wpf 应用程序中有一个媒体元素,其中包含正在加载的 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 在它应该开始的时候开始,并且在处理完成后,它消失了,一个黑色的方块占据了它的位置。由于我的应用程序的背景是白色的,处理完成后它只是一个小黑框。本质上,媒体元素点全黑了。感谢您的帮助!
将 MediaElement
的 Visibility
设置为 Collapsed
或 Hidden
,具体取决于您希望布局如何工作。
loadGif.Visibility = Visibility.Collapsed;
我的 wpf 应用程序中有一个媒体元素,其中包含正在加载的 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 在它应该开始的时候开始,并且在处理完成后,它消失了,一个黑色的方块占据了它的位置。由于我的应用程序的背景是白色的,处理完成后它只是一个小黑框。本质上,媒体元素点全黑了。感谢您的帮助!
将 MediaElement
的 Visibility
设置为 Collapsed
或 Hidden
,具体取决于您希望布局如何工作。
loadGif.Visibility = Visibility.Collapsed;