예제 #1
0
        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);
        }
예제 #2
0
        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);
        }