From 0f5b520aa44faedbdbab4cdc1020384e9720fe8d Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Fri, 5 Apr 2013 16:57:42 +0400 Subject: ThreadView progressIndicator, small fixes --- Juick/ThreadView.xaml.cs | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) (limited to 'Juick/ThreadView.xaml.cs') diff --git a/Juick/ThreadView.xaml.cs b/Juick/ThreadView.xaml.cs index 5c1c0fc..b197a8b 100644 --- a/Juick/ThreadView.xaml.cs +++ b/Juick/ThreadView.xaml.cs @@ -4,6 +4,9 @@ using System.Windows.Controls; using System.Windows.Navigation; using Juick.ViewModels; using Microsoft.Phone.Controls; +using Microsoft.Phone.Shell; +using System.Windows.Data; +using System.Windows; namespace Juick { @@ -14,10 +17,32 @@ namespace Juick InitializeComponent(); Model = new ThreadViewModel(App.AppContext); DataContext = Model; + Loaded += (o, args) => + { + var progressIndicator = SystemTray.ProgressIndicator; + + if (progressIndicator != null) + { + return; + } + progressIndicator = new ProgressIndicator(); + + SystemTray.SetProgressIndicator(this, progressIndicator); + + Binding binding = new Binding("IsDataLoading") { Source = App.AppContext }; + + BindingOperations.SetBinding( + progressIndicator, ProgressIndicator.IsVisibleProperty, binding); + + binding = new Binding("IsDataLoading") { Source = App.AppContext }; + + BindingOperations.SetBinding( + progressIndicator, ProgressIndicator.IsIndeterminateProperty, binding); + }; } public ThreadViewModel Model; - + // When page is navigated to set data context to selected item in list protected override void OnNavigatedTo(NavigationEventArgs e) { @@ -28,6 +53,7 @@ namespace Juick { Model.Mid = int.Parse(_mid); } + Model.RefreshData(); } private void ListBox_SelectionChanged(object sender, System.Windows.Controls.SelectionChangedEventArgs e) @@ -37,11 +63,11 @@ namespace Juick return; // Navigate to the new page - var item = Model.Items[((ListBox) sender).SelectedIndex]; + var item = Model.Items[((ListBox)sender).SelectedIndex]; var destUri = string.Format("/NewPostView.xaml?mid={0}", item.MID); if (item.RID > 0) destUri += string.Format("&rid={0}", item.RID); - NavigationService.Navigate(new Uri(destUri , UriKind.Relative)); + NavigationService.Navigate(new Uri(destUri, UriKind.Relative)); // Reset selected index to -1 (no selection) ((ListBox)sender).SelectedIndex = -1; -- cgit v1.2.3