diff --git a/KhanViewer.Metro/CategoryPage.xaml.cs b/KhanViewer.Metro/CategoryPage.xaml.cs index 97f66b2..14c2ad3 100644 --- a/KhanViewer.Metro/CategoryPage.xaml.cs +++ b/KhanViewer.Metro/CategoryPage.xaml.cs @@ -36,7 +36,8 @@ private void MainListBox_SelectionChanged(object sender, SelectionChangedEventAr return; var item = MainListBox.SelectedItem as VideoItem; // Navigate to the new page - item.Navigate(); + //item.Navigate(); + Frame.Navigate(typeof(VideoPlayer), item); // Reset selected index to -1 (no selection) MainListBox.SelectedIndex = -1; diff --git a/KhanViewer.Metro/KhanViewer.Metro.csproj b/KhanViewer.Metro/KhanViewer.Metro.csproj index 3362288..66d1673 100644 --- a/KhanViewer.Metro/KhanViewer.Metro.csproj +++ b/KhanViewer.Metro/KhanViewer.Metro.csproj @@ -163,6 +163,9 @@ MainPage.xaml + + VideoPlayer.xaml + @@ -184,6 +187,10 @@ PreserveNewest + + Designer + MSBuild:Compile + Designer MSBuild:Compile diff --git a/KhanViewer.Metro/VideoPlayer.xaml b/KhanViewer.Metro/VideoPlayer.xaml index 3f9ec4c..4252121 100644 --- a/KhanViewer.Metro/VideoPlayer.xaml +++ b/KhanViewer.Metro/VideoPlayer.xaml @@ -36,6 +36,11 @@ + diff --git a/KhanViewer.Metro/VideoPlayer.xaml.cs b/KhanViewer.Metro/VideoPlayer.xaml.cs index 84ce6f8..0b59c87 100644 --- a/KhanViewer.Metro/VideoPlayer.xaml.cs +++ b/KhanViewer.Metro/VideoPlayer.xaml.cs @@ -33,6 +33,10 @@ public VideoPlayer() /// property is typically used to configure the page. protected override void OnNavigatedTo(NavigationEventArgs e) { + var video = e.Parameter as VideoItem; + this.DataContext = video; + + vid.Play(); } } } diff --git a/KhanViewer/ViewModels/VideoItem.cs b/KhanViewer/ViewModels/VideoItem.cs index f0ea4b2..d801d74 100644 --- a/KhanViewer/ViewModels/VideoItem.cs +++ b/KhanViewer/ViewModels/VideoItem.cs @@ -30,9 +30,9 @@ public void Navigate() App.ViewModel.TrackPageView(this.Name, "/" + this.Parent + "/Video/" + this.Name); - bool hasVideoUri = this.VideoFileUri == null || string.IsNullOrWhiteSpace(this.VideoFileUri.ToString()); + bool noVideoFileUri = this.VideoFileUri == null || string.IsNullOrWhiteSpace(this.VideoFileUri.ToString()); #if !WINDOWS_PHONE - if (hasVideoUri) + if (noVideoFileUri) { Windows.System.Launcher.LaunchUriAsync(this.VideoUri); } @@ -43,7 +43,7 @@ public void Navigate() #else WebBrowserTask browser = new WebBrowserTask(); - if (hasVideoUri) + if (noVideoFileUri) { browser.Uri = this.VideoUri; }