コード例 #1
0
        private void ArrowDoubleClick(object sender, MouseButtonEventArgs e)
        {
            Dispatcher.BeginInvoke(new Action(() =>
            {
                NormalColorPickerWindow colorPicker = new NormalColorPickerWindow();

                if (sender is Arrow)
                {
                    colorPicker.ColorPicker.SelectedColor = ((System.Windows.Media.SolidColorBrush)((Arrow)sender).Background).Color;
                }
                else if (sender is System.Windows.Shapes.Rectangle)
                {
                    colorPicker.ColorPicker.SelectedColor = ((System.Windows.Media.SolidColorBrush)((System.Windows.Shapes.Rectangle)sender).Fill).Color;
                }

                if (colorPicker.ShowDialog().GetValueOrDefault())
                {
                    switch (stopType)
                    {
                    case StopType.Start:
                        SelectedBrush.StartColor = DrawingColorToBrushConverter.ConvertBack(colorPicker.SelectedColorBrush);
                        SetStopColor(SelectedBrush.StartColor);
                        break;

                    case StopType.End:
                        SelectedBrush.EndColor = DrawingColorToBrushConverter.ConvertBack(colorPicker.SelectedColorBrush);
                        SetStopColor(SelectedBrush.EndColor);
                        break;
                    }

                    SetPreviewImage();
                }
            }));
        }
コード例 #2
0
        private void SetCurrentStopColor()
        {
            NormalColorPickerWindow picker = new NormalColorPickerWindow();

            if (picker.ShowDialog().GetValueOrDefault())
            {
                GradientBrush.SelectedArrow.Background = picker.SelectedColorBrush;
                GradientBrush.SelectedArrow.Color      = picker.SelectedColorBrush.Color;
                SelectedGradientBrush = linearGradientBrush;
            }
        }