Mit Inlineframes (auch iframes genannt) können YouTube-Videos in Windows 8 Metro Style Apps ganz leicht eingebunden werden. Man braucht im XAML nur eine WebView definieren und dann vom Code Behind den Embed Code übergeben. Mit C# sieht das wie folgt aus:
XAML-Code:
1 | <WebView x:Name="VideoView" Width="853" Height="480" /> |
C#:
1 2 | string EmbedCode = "<iframe width=\"853\" height=\"480\" src=\"https://www.youtube-nocookie.com/embed/dTKpHbHyuYQ\" frameborder=\"0\" allowfullscreen></iframe>"; VideoView.NavigateToString(EmbedCode); |
Man kann auch die Uri-Klasse verwenden, hat dann aber nicht die Einstellungsmöglichkeiten des iframes:
1 2 | Uri source = new Uri("https://www.youtube-nocookie.com/embed/dTKpHbHyuYQ"); VideoView.Navigate(source); |
Hinweis 1:
Ist das Video in einer Unterseite eingebettet, kann es beim Wechsel auf die Hauptseite passieren, dass im Hintergrund noch der Ton des Videos weiterläuft. Sollte das der Fall sein, hilft folgender Workaround:
1 2 3 4 5 | protected override void OnNavigatedFrom(NavigationEventArgs e) { base.OnNavigatedFrom(e); VideoView.NavigateToString(""); } |