private void UpdateColor(object sender, RoutedEventArgs e)
        {
            var colorelem = ((Button)sender).Tag as ColorElement;

            if (colorelem == null)
            {
                return;
            }

            var colorwd = new ColorWindow
            {
                Owner = this,
                WindowStartupLocation = WindowStartupLocation.CenterOwner,
                StartColor            = colorelem.Color,
                PredefinedColors      = new ObservableCollection <Color>(Colors.Select(elem => elem.Color)),
                Title = colorelem.Key
            };

            if (colorwd.ShowDialog() != true || colorwd.Result == MessageBoxResult.Cancel)
            {
                return;
            }


            colorelem.Color = colorwd.SelectedColor;
        }
예제 #2
0
        public static void ShowErrorMessage(MainWindow mainWindow, Exception exception)
        {
            var dlg = new ColorWindow()
            {
                Title = Properties.Resources.Error, Message = exception.Message, SubMessage = exception.StackTrace, Owner = mainWindow, MessageIcon = MessageBoxImage.Error
            };

            dlg.ShowDialog();
        }
        private void AddPredefined(object sender, RoutedEventArgs e)
        {
            var cd = new ColorWindow {
                Owner = this, PredefinedColors = PredefinedColors, StartColor = Colors.Black
            };

            if (cd.ShowDialog() == true && cd.Result != MessageBoxResult.Cancel)
            {
                PredefinedColors = cd.PredefinedColors;
                PredefinedColors.Add(cd.SelectedColor);
                MainWindow.StoreColors(PredefinedColors.ToList());
            }
        }
        private void CheckDouble(object sender, MouseButtonEventArgs e)
        {
            if (e.ClickCount == 2)
            {
                e.Handled = true;
                var cd = new ColorWindow {
                    Owner = this, ShowPredefined = false, StartColor = ((SolidColorBrush)((Button)sender).Background).Color
                };

                if (cd.ShowDialog() == true && cd.Result != MessageBoxResult.Cancel)
                {
                    Replace(((SolidColorBrush)((Button)sender).Background).Color, cd.SelectedColor);
                    MainWindow.StoreColors(PredefinedColors.ToList());
                    SetColor(e.ChangedButton == MouseButton.Left, (Button)sender);
                }
            }
            else
            {
                SetColor(e.ChangedButton == MouseButton.Left, (Button)sender);
            }
        }