ListPicker_SelectionChanged时如何更改MediaElement源?

时间:2014-04-24 00:27:48

标签: c# xaml windows-phone-8 casting

我尝试将项目从列表选择器绑定到MediaElement Source当用户我在ListPickerItem中有uri存储时标记我的问题我想在ListPicker_SelectionChanged时更改bleep.Source但我的问题如何选择并投射它?

private void ListPicker_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e)
{
    // TODO: Add event handler implementation here.
    bleep.Source = lp_sound.SelectedItem.ToString();
}



<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
    <MediaElement x:Name="bleep" Source="soundFiles\ROAR.wav" AutoPlay="False" Visibility="Collapsed"/>
    <Button x:Name="ButtonPlay" Content="play" HorizontalAlignment="Left" Margin="170,404,0,0"  VerticalAlignment="Top" Click="ButtonPlay_Click"/>
    <toolkit:ListPicker x:Name="lp_sound" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Width="408" SelectionChanged="ListPicker_SelectionChanged">

        <toolkit:ListPickerItem x:Name="BestRoar" Content="Sound1" Tag="soundFiles\ROAR.wav" ></toolkit:ListPickerItem>
    </toolkit:ListPicker>

</Grid>

1 个答案:

答案 0 :(得分:0)

您可以这样做以获得结果。我假设你在listpicker中使用了本地媒体文件。

private void ListPicker_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e){

ListPickerItem item = lp_sound.SelectedItem as ListPickerItem;

if(item!=null)
   bleep.Source = new Uri(Convert.ToString(item.Tag), UriKind.Relative);
}

希望这会有所帮助。