Jak přehrát hudbu v .mp3/.Wma v Metro aplikaci

v MainPage.xaml

XML
<Grid.ColumnDefinitions>
    <ColumnDefinition></ColumnDefinition>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
    <RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<MediaElement x:Name="me" Grid.Column="0" Grid.Row="0" IsMuted="False" Volume="100" AudioCategory="ForegroundOnlyMedia" PosterSource="Assets/Logo.png" RealTimePlayback="False" AutoPlay="True" Height="100" Width="100"></MediaElement>
4. Vložte tento kód třídy MainPage v MainPage.xaml.cs
C#
IRandomAccessStreamWithContentType stream = null;
void OpenSong()
{
    Windows.Storage.KnownFolders.MusicLibrary.GetFileAsync("_.mp3").Completed = (async, status) =>
    {
        if (async.Status == AsyncStatus.Completed)
        {
            StorageFile sf = async.GetResults();
            sf.OpenReadAsync().Completed = (async2, status2) =>
            {
                if (async2.Status == AsyncStatus.Completed)
                {
                    stream = (IRandomAccessStreamWithContentType)async2.GetResults();
                    this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.High, PlaySong).Completed = (async3, status3) =>
                    {
                    };
                }
            };
        }
    };
}
void PlaySong()
{
    //-Nastavit pouze vlastnost Source nestačí, pak mi to nechtělo hrát, musí se to přes metodu SetSource
    me.SetSource(stream, stream.ContentType);
    me.Play();
}
5. Zavolejte metodu OpenSong() v prázdné metodě OnNavigatedTo(). Pokud ji zavoláte v konstruktoru, nevyhodí se vám žádná chyba ale zvuk vám prostě nebude hrát
C#
protected override void OnNavigatedTo(NavigationEventArgs e)
{
    OpenSong();
}
6. Vytvořte hudební soubor _.mp3 v hudební knihovně W8 7. Povolte v souboru Package.appxmanifest přístup do hudební knihovny 8. Spusťte program a otestujte]]>

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *