2012-02-24 115 views
0

我已經開發了WPF中的媒體播放器,但我沒有得到計時器的滑塊在那個時候我會得到下面的計時器是我的.cs文件代碼。 我用dispatchertimer timer.video正在尋找,但計時器不顯示與視頻。 seekbar不移動,我點擊seekbar.plz幫助我。我怎樣才能在wpf mediaplayer中獲得計時器

在此先感謝。

 DispatcherTimer timer; 
    public TimeSpan duration; 

    public Window1() 
    { 
     InitializeComponent(); 
     timer = new DispatcherTimer(); 
     timer.Interval = TimeSpan.FromMilliseconds(400); 
     timer.Tick += new EventHandler(timer_tick); 
     Loaded += new RoutedEventHandler(Window_Loaded); 




    } 
    private void mediaElement1_MediaOpened(object sender, RoutedEventArgs e) 
    { 


     if (mediaElement1.NaturalDuration.HasTimeSpan) 
     { 
      TimeSpan ts = mediaElement1.NaturalDuration.TimeSpan; 
      slider1.Maximum = ts.TotalSeconds; 
      slider1.SmallChange = 1; 
      slider1.LargeChange = Math.Min(10, ts.Seconds/10); 
     } 
     timer.Start(); 
    } 
    private void timer1_Tick(object sender, EventArgs e) 
    { 
     slider1.Value = mediaElement1.Position.TotalSeconds; 

    } 

回答

0

看看這個

http://msdn.microsoft.com/en-us/library/system.threading.timer.aspx

您可以實現這一點,但你必須引用傳遞給你的控制/窗口,因爲無需,線程/計時器對象到你的控件的引用不能修改控件(即文本等)。

希望有幫助!

編輯:對不起,我看錯,但肯定檢查使用定時器您選擇是否可以改變你的元素

+0

儘量延長定時器控制和slider1控制傳遞可能? – Base33 2012-02-24 11:46:26

+0

我無法得到你..............對不起 – havan 2012-02-24 11:48:09

+0

檢查你的DispatcherTimer方法是否可以訪問和修改窗口中的控件。 – Base33 2012-02-24 11:51:34