private StackPanel NewLabelImage(IResultPane pane, string text, string image) { StackPanel stackPanel = new StackPanel { Orientation = Orientation.Horizontal }; Image img = WpfUtils.NewImage(image); img.Width = 12; img.Height = 12; stackPanel.Children.Add(new TextBlock { Text = text, Padding = new Thickness(2, 0, 2, 0) }); stackPanel.Children.Add(img); img.Tag = pane; img.MouseDown += TabItemClosed; return(stackPanel); }
private void TabItemClosed(object sender, MouseButtonEventArgs e) { IResultPane pane = (sender as Image).Tag as IResultPane; if (pane.IsDirty) { switch (MessageBox.Show($"Save file: \"{pane.Link}\" ?", "Save", MessageBoxButton.YesNoCancel, MessageBoxImage.Question)) { case MessageBoxResult.Yes: pane.Save(); break; case MessageBoxResult.No: break; case MessageBoxResult.Cancel: return; } } panes.Remove(pane.Link); tabControl.Items.Remove(pane.TabItem); }