MediaElement.MediaOpened 事件
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在已验证并打开媒体流并且已读取文件头时发生。
// Register
event_token MediaOpened(RoutedEventHandler const& handler) const;
// Revoke with event_token
void MediaOpened(event_token const* cookie) const;
// Revoke with event_revoker
MediaElement::MediaOpened_revoker MediaOpened(auto_revoke_t, RoutedEventHandler const& handler) const;
public event RoutedEventHandler MediaOpened;
function onMediaOpened(eventArgs) { /* Your code */ }
mediaElement.addEventListener("mediaopened", onMediaOpened);
mediaElement.removeEventListener("mediaopened", onMediaOpened);
- or -
mediaElement.onmediaopened = onMediaOpened;
Public Custom Event MediaOpened As RoutedEventHandler
<MediaElement MediaOpened="eventhandler" .../>
事件类型
示例
以下代码演示如何确定媒体流是否为实时流。
private void media_MediaOpened(object sender, RoutedEventArgs e)
{
bool isLive = IsLiveStream(sender as MediaElement);
}
private bool IsLiveStream(MediaElement media)
{
bool isLive = false;
if (media.NaturalDuration.TimeSpan.Ticks == Int64.MaxValue)
{
isLive = true;
}
return isLive;
}
注解
实时媒体流报告 Int64.MaxValue 的 NaturalDuration。
在引发 MediaOpened 事件之前发生的任何 对 Play、 Pause 和 Stop 方法的调用将被忽略。