我想爲Windows Phone做一個小音樂播放器。我在播放器中添加了滑塊功能。音樂播放時滑塊可以正常工作。但我想根據我拖動滑塊的方式更改媒體,但找不到任何相關事件。我嘗試過更改價值,但沒有幫助。我也試過Thumb.Dragstarted事件,但我的Visual Studio提供了一個錯誤。這是迄今爲止代碼:Thumb.DragStarted事件不工作在視覺工作室2013
XAML:
<Slider AllowDrop="True" x:Name="sld1" Thumb.DragStarted="sld1_DragStarted" HorizontalAlignment="Left" Margin="58,213,0,0" VerticalAlignment="Top" Width="351" ValueChanged="sld1_ValueChanged"/>
<MediaElement x:Name="bleep" Source="abcd.wav" AutoPlay="False" Visibility="Collapsed" MediaEnded="bleep_MediaEnded"/>
C#:
public Page1()
{
DispatcherTimer timer = new DispatcherTimer();
timer.Interval = TimeSpan.FromSeconds(1);
timer.Tick += timer_Tick;
timer.Start();
}
private bool userIsDraggingSlider = false;
private void timer_Tick(object sender, EventArgs e)
{
if ((bleep.Source != null) && (bleep.NaturalDuration.HasTimeSpan) && (!userIsDraggingSlider))
{
sld1.Minimum = 0;
sld1.Maximum = bleep.NaturalDuration.TimeSpan.TotalSeconds;
sld1.Value = bleep.Position.TotalSeconds;
}
}
private void sld1_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
tm_passed.Text = TimeSpan.FromSeconds(sld1.Value).ToString(@"mm\:ss");
}
private void sld1_DragStarted(object sender, DragStartedEventArgs e)
{
userIsDraggingSlider = true;
}
private void sld1_DragCompleted(object sender, DragCompletedEventArgs e)
{
userIsDraggingSlider = false;
bleep.Position = TimeSpan.FromSeconds(sld1.Value);
}
但由於DragCompleted和DragStarted事件不起作用我無法將拖動功能提供給滑塊。
你得到的錯誤是什麼? – Kulasangar 2015-02-10 11:45:42
它說:「本地屬性'dragstarted'只能應用於派生自'Thumb'的類型@Kulasangar – decoders15 2015-02-10 13:27:42