private async void MessageSend_OnClick(object sender, RoutedEventArgs e) { MessageProgressBar.Visibility = Visibility.Visible; string messageId = string.Format("~{0},{1}", _userName, App.UserAccountEntity.GetUserEntity().OnlineId); var messageManager = new MessageManager(); MessageSend.IsEnabled = false; ImageSend.IsEnabled = false; //CameraAccess.IsEnabled = false; bool result = false; if (ImageSource.Source != null) { using (IRandomAccessStream stream = await File.OpenAsync(FileAccessMode.ReadWrite)) { // TODO: Add JPEG Compression //result = await //messageManager.CreatePostWithMedia(messageId, MessageTextBox.Text, "", pixels, // App.UserAccountEntity); } } else { result = await messageManager.CreatePost(messageId, MessageTextBox.Text, App.UserAccountEntity); } MessageProgressBar.Visibility = Visibility.Collapsed; MessageSend.IsEnabled = true; ImageSend.IsEnabled = true; if (result) { ImageSource.Source = null; MessageTextBox.Text = string.Empty; _vm.SetMessages(_userName, App.UserAccountEntity); return; } const string messageText = "An error has occured. The message has not been sent."; var msgDlg = new MessageDialog(messageText); await msgDlg.ShowAsync(); }
private async void MessageSend_OnClick(object sender, RoutedEventArgs e) { MessageProgressBar.Visibility = Visibility.Visible; string messageId = string.Format("~{0},{1}", _userName, App.UserAccountEntity.GetUserEntity().OnlineId); var messageManager = new MessageManager(); MessageSend.IsEnabled = false; ImageSend.IsEnabled = false; bool result; try { result = await messageManager.CreatePost(messageId, MessageTextBox.Text, App.UserAccountEntity); MessageProgressBar.Visibility = Visibility.Collapsed; MessageSend.IsEnabled = true; ImageSend.IsEnabled = true; } catch (Exception) { result = false; } if (result) { MessageTextBox.Text = string.Empty; _vm.SetMessages(_userName, App.UserAccountEntity); return; } const string messageText = "An error has occured. The message has not been sent."; var msgDlg = new MessageDialog(messageText); await msgDlg.ShowAsync(); MessageProgressBar.Visibility = Visibility.Collapsed; MessageSend.IsEnabled = true; ImageSend.IsEnabled = true; }
/// <summary> /// Populates the page with content passed during navigation. Any saved state is also /// provided when recreating a page from a prior session. /// </summary> /// <param name="sender"> /// The source of the event; typically <see cref="NavigationHelper" /> /// </param> /// <param name="e"> /// Event data that provides both the navigation parameter passed to /// <see cref="Frame.Navigate(Type, Object)" /> when this page was initially requested and /// a dictionary of state preserved by this page during an earlier /// session. The state will be null the first time a page is visited. /// </param> private async void NavigationHelper_LoadState(object sender, LoadStateEventArgs e) { FriendButtonStackPanel.Visibility = Visibility.Collapsed; _vm = (FriendPageViewModel)DataContext; if (e.PageState != null && e.PageState.ContainsKey("userEntity") && App.UserAccountEntity == null) { string savedStateJson = e.PageState["userAccountEntity"].ToString(); App.UserAccountEntity = JsonConvert.DeserializeObject <UserAccountEntity>(savedStateJson); savedStateJson = e.PageState["userEntity"].ToString(); var user = JsonConvert.DeserializeObject <UserAccountEntity.User>(savedStateJson); App.UserAccountEntity.SetUserEntity(user); } _userName = (string)e.NavigationParameter; _vm.SetRecentActivityFeed(_userName); _vm.SetFriendsList(_userName, false, false, false, false, true, false, false); _vm.SetTrophyList(_userName); _vm.SetMessages(_userName, App.UserAccountEntity); await _vm.SetUser(_userName); SetFriendButtons(); }