0
A
回答
0
所以我只是想實現下面的視頻播放滑塊......但位置屬性不是依賴項屬性:■
2
可以使用DispatchTimer。本文提供了一些有關如何實現此功能的良好洞察。 MediaElement and More with WPF。
這是我從一個項目中取得的一些示例代碼。它使用滑塊控件顯示視頻的位置,並允許用戶更改位置。
我也是一個新手,所以它可能有一些是錯誤的(隨意評論問題的評論部分:)。
private DispatcherTimer mTimer;
private bool mIsDragging = false;
private bool mTick = false;
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
medPlayer.Play();
medPlayer.Stop();
mTimer = new DispatcherTimer();
mTimer.Interval = TimeSpan.FromMilliseconds(100);
mTimer.Tick += new EventHandler(mTimer_Tick);
mTimer.Start();
}
void mTimer_Tick(object sender, EventArgs e)
{
if (!mIsDragging)
{
try
{
mTick = true;
sldPosition.Value = medPlayer.Position.TotalMilliseconds;
}
finally
{
mTick = false;
}
}
}
private void sldPosition_DragStarted(object sender, System.Windows.Controls.Primitives.DragStartedEventArgs e)
{
mIsDragging = true;
medPlayer.Pause();
}
private void sldPosition_DragCompleted(object sender, System.Windows.Controls.Primitives.DragCompletedEventArgs e)
{
mIsDragging = false;
if (chkPlay.IsChecked.Value)
medPlayer.Play();
}
private void sldPosition_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
var pos = TimeSpan.FromMilliseconds(e.NewValue);
lblPosition.Content = string.Format("{0:00}:{1:00}", pos.Minutes, pos.Seconds);
if (!mTick)
{
medPlayer.Position = TimeSpan.FromMilliseconds(sldPosition.Value);
if (medPlayer.Position == medPlayer.NaturalDuration.TimeSpan)
{
chkPlay.IsChecked = false;
medPlayer.Stop();
}
}
}
0
FFME使position(和大多數其他媒體屬性)成爲依賴項屬性。試一試。
相關問題
- 1. WPF:爲什麼MediaElement不玩?
- 2. 需要WPF MediaElement包裝
- 3. WPF中的MediaElement支持
- 4. WPF MediaElement,更改解碼器
- 5. WPF MediaElement中的透明avi
- 6. WPF MediaElement,更改音軌
- 7. WPF MediaElement視頻播放撕裂
- 8. WPF MediaElement。不要從開始遊戲
- 9. 從mediaElement中錄製C#和WPF視頻
- 10. WPF MediaElement自然持續時間
- 11. WPF:使用ResourceDictionary更改MediaElement源
- 12. WPF中的MediaElement播放視頻流?
- 13. 使用WPF MediaElement放大視頻
- 14. WPF MediaElement ActualWidth和ActualHeight始終爲零
- 15. wpf將圖像疊加到mediaelement上
- 16. 捕獲每個WPF MediaElement框架
- 17. 從WPF MediaElement控件捕獲MediaPlayer異常
- 18. Mediaelement源自服務器(mms :)問題wpf
- 19. Silverlight MediaElement
- 20. WindowsPhone MediaElement
- 21. event mediaElement
- 22. 將MediaElement綁定到WPF中的滑塊位置
- 23. 使用WPF MediaElement與MKV視頻格式 - 沒有音頻
- 24. 是否可以將liistbox選定值綁定到mediaelement源wpf
- 25. Wpf可視化畫筆視覺綁定到MediaElement
- 26. WPF MediaElement標籤{綁定位置}不更新
- 27. WPF MediaElement,如何讓重複速度變慢?
- 28. 如何使用WPF的MediaElement平滑播放視頻序列?
- 29. 格式和視頻像WMP與MediaElement的WPF分辨率
- 30. 如何在wpf中的mediaelement上放置媒體?
看到http://stackoverflow.com/questions/869761/wpf-implementing-a-mediaplayer-audio-video-seeker一個良好的開端 – kenwarner 2010-03-03 01:42:36