2016-10-03 96 views
0

我想將自然持續時間視頻文件轉換成秒,因爲我想設置進度條的最大值。但我有這樣的錯誤指定的鑄造不是有效的如何給視頻的長度進度條的最大值

  <ProgressBar Name="pb" Height="23" VerticalAlignment="Center" 
         Value="{Binding ElementName=Video, Path=Position, 
         Converter={StaticResource progressbarconvert}}" 
         Maximum="{Binding ElementName=Video,Path=NaturalDuration, 
         Converter={StaticResource progressbarconvert}}"></ProgressBar> 

這是我的進度條綁定代碼。

 TimeSpan t = (TimeSpan)value; 
     int seconds = t.Seconds; 
     seconds += t.Minutes * 60; 
     seconds += t.Hours * 360; 
     return seconds; 

這是我的轉換器代碼錯誤。並且我在TimeSpan t =(TimeSpan)值中有錯誤。這個錯誤的原因是什麼?有沒有其他解決方案將視頻的長度提供給進度條的最大值?

+0

爲什麼不只是做'返回(int)t.TotalSeconds;'?當你調試的時候,如果你執行'value.GetType()',調試器中'value'的類型是什麼? –

+0

其實值類型是自動的,因爲我使用自然持續時間,因此返回自動值。它顯示了視頻播放後的時間。斯科特你能幫我解決這個問題。 –

+0

Ateik有正確的答案。 –

回答