private void Button_Click(object sender, RoutedEventArgs e) { try { Mouse.OverrideCursor = Cursors.Wait; ApplicationViewModel.Current = new ApplicationViewModel(ChatProxyFactory.CreateChatProxy(txtUsername.Text, new UserSettingsNicknameService(), new UserSettingsTagService())); Application.Current.MainWindow = new MainWindow { DataContext = ApplicationViewModel.Current }; Application.Current.MainWindow.Show(); Close(); } catch (ChatUserLoginException ex) { Mouse.OverrideCursor = null; MedConfigMessageBox.ShowError(ex.Message); #if !DEBUG Application.Current.Shutdown(); #endif } finally { Mouse.OverrideCursor = null; } }
internal void Import(string settingsFilePath) { if (!File.Exists(settingsFilePath)) { throw new FileNotFoundException(); } try { // Open settings file as XML var import = XDocument.Load(settingsFilePath); // Get the <setting> elements var settings = import.XPathSelectElements("//setting"); foreach (var setting in settings) { string name = setting.Attribute("name").Value; string value = setting.XPathSelectElement("value").FirstNode?.ToString(); if (value == null) { value = string.Empty; } ; try { Type t = this[name].GetType(); TypeConverter typeConverter = TypeDescriptor.GetConverter(this[name].GetType()); if (typeConverter.CanConvertFrom(typeof(string))) { this[name] = typeConverter.ConvertFrom(value); } else { XmlSerializer s = new XmlSerializer(t); using (TextReader reader = new StringReader(value)) { object xmlValue = s.Deserialize(reader); this[name] = xmlValue; } } } catch (SettingsPropertyNotFoundException) { } } OnPropertyChanged(this, new PropertyChangedEventArgs(string.Empty)); } catch (Exception) { MedConfigMessageBox.ShowError("Invalid Configuration File"); Reload(); } }
private void MenuItem_Click_1(object sender, RoutedEventArgs e) { try { var src = GetImage(itemsControl); Clipboard.SetImage(src); } catch (Exception ex) { MedConfigMessageBox.ShowError(ex.Message); } }
void ImageUrlChatMessageDataTemplate_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { try { Mouse.OverrideCursor = Cursors.Wait; ImageUrlChatMessage urlMessage = (sender as Image).DataContext as ImageUrlChatMessage; if (urlMessage != null) { Process.Start(urlMessage.ImageUrl); } } catch (Exception ex) { MedConfigMessageBox.ShowError(ex.Message); } finally { Mouse.OverrideCursor = null; } }
private static UIElement CreateHyperlink(string url) { TextBlock txt = new TextBlock { Text = url, ToolTip = url, Cursor = Cursors.Hand, TextDecorations = System.Windows.TextDecorations.Underline, TextWrapping = TextWrapping.Wrap, }; txt.PreviewMouseLeftButtonDown += (sender, args) => { try { Process.Start((sender as TextBlock).Text); } catch (Exception ex) { MedConfigMessageBox.ShowError(ex.Message); } }; txt.ContextMenu = new ContextMenu(); MenuItem clickMenuItem = new MenuItem() { Header = "Copy Url" }; clickMenuItem.Click += (y, z) => { Clipboard.SetText((((y as MenuItem).Parent as ContextMenu).PlacementTarget as TextBlock).Text); }; Grid grid = new Grid(); grid.Children.Add(txt); grid.ToolTip = url; txt.ContextMenu.Items.Add(clickMenuItem); return(grid); }
void MouseButtonDown(object sender, MouseButtonEventArgs e) { if (e.LeftButton == MouseButtonState.Pressed) { string url = string.Empty; if (sender is FrameworkElement) { url = ((sender as FrameworkElement).DataContext as HyperlinkChatMessage).Url; } else if (sender is Run) { url = (sender as Run).Text; } try { Process.Start(url); } catch (Exception ex) { MedConfigMessageBox.ShowError(ex.Message); } } }
private void MenuItem_Click(object sender, RoutedEventArgs e) { SaveFileDialog dlg = new SaveFileDialog(); dlg.AddExtension = true; dlg.Filter = "PNG|*.png"; dlg.InitialDirectory = @"\\one-021619\Share\HylandMedConfig\Whiteboards"; dlg.FileName = Message.ID.ToString(); if (dlg.ShowDialog() ?? false) { try { var src = GetImage(itemsControl); using (FileStream fileStream = new FileStream(dlg.FileName, FileMode.OpenOrCreate)) { SaveAsPng(src, fileStream); } } catch (Exception ex) { MedConfigMessageBox.ShowError(ex.Message); } } }