我在WPF应用中有一个媒体元素。我试图在标签中显示当前位置。
我已将该位置绑定到标签,但在视频播放时它不会更新。它只显示00:00:00。
如何在视频播放时使用当前位置更新标签?
<MediaElement x:Name="ME" Grid.Column="1" />
<Label x:Name="lblTime" Content="{Binding Position, ElementName=ME}" />
答案 0 :(得分:1)
问题是,Position不是依赖属性,因此它不会通知属性已更改。您需要做的是在后面的代码中实现一个自定义属性,该属性将在计时器上更新:
Public TimeSpan MediaPosition
{
get { return _mediaPosition; }
set
{
_mediaPosition = value;
PropertyChanged("MediaPosition");
}
}
propertyChanged事件将更新绑定。您可以在以下位置阅读propertyChanged事件:
https://msdn.microsoft.com/en-us/library/ms743695(v=vs.110).aspx