【问题标题】:WPF MediaElement Label {Binding Position} not updating [duplicate]WPF MediaElement标签{绑定位置}不更新[重复]
【发布时间】:2017-05-14 12:37:19
【问题描述】:

我在 WPF 应用程序中有一个媒体元素。我正在尝试在标签中播放视频时显示当前位置。

我已将位置绑定到标签,但在播放视频时它不会更新。它只显示 00:00:00。

如何在视频播放时使用当前位置更新标签?

<MediaElement x:Name="ME" Grid.Column="1" />

<Label x:Name="lblTime" Content="{Binding Position, ElementName=ME}" />

【问题讨论】:

标签: c# wpf


【解决方案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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-14
    • 1970-01-01
    • 2021-09-30
    • 1970-01-01
    • 2022-12-04
    相关资源
    最近更新 更多