WPF C#用户控制页IsVisibleChanged事件
本文关键字:IsVisibleChanged 事件 控制 用户 WPF | 更新日期: 2023-09-27 18:24:01
我有一些用户控制页面和一个MainWindow,所以我想将用户控制页面设置为隐藏,一旦隐藏,它就会停止播放的音频
我知道我必须对IsVisibleChanged事件做点什么,但我被如何启动它卡住了?
是这样的吗?
(pagename).IsVisibleChanged(object sender , RoutedEventArgs e )
{ ap.Stop() }
因为我的用户控制页面(我使用自定义控件在主窗口中显示它)在我的主窗口中,并且用户控制页面有一些音频播放,所以当我单击主窗口上的主页按钮时,我会将用户控制页面设置为隐藏并显示我的主页,但现在当它被隐藏时,该页面的音频仍在播放,所以我去问了一下,有人说在用户控制页面(播放音频的1)中使用IsVisibleChanged事件,但我被困在了如何编写它的问题上,因为我是新手。
第一个解决方案:
您应该使用DependencyPropertyChangedEventArgs
作为第二个参数,并检查指示页面是否可见的NewValue
属性(msdn)。
示例:
void (pagename)_IsVisibleChanged(object sender, DependencyPropertyChangedEventArgs e)
{
if (!((bool)e.NewValue))
{
ap.Stop();
}
}
在这里您可以找到示例解决方案(IsVisibleChangedExample)。
第二种解决方案:
如果使用MediaElement
(msdn)播放音乐,则应使用两个属性:CCD_ 4(msdn)和CCD_。
示例:
<MediaElement Name="me" Source="path to your music file"
LoadedBehavior="Play" UnloadedBehavior="Stop" Volume="100" />