예제 #1
0
 public void ShowColorDialog()
 {
     using (ColorPickerForm dialogColor = new ColorPickerForm(Color))
     {
         if (dialogColor.ShowDialog() == DialogResult.OK)
         {
             Color = dialogColor.NewColor;
         }
     }
 }
예제 #2
0
        public static Color GetColor(Color currentColor)
        {
            using (ColorPickerForm dialog = new ColorPickerForm(currentColor))
            {
                dialog.rbSaturation.Checked = true;

                if (dialog.ShowDialog() == DialogResult.OK)
                {
                    return(dialog.NewColor);
                }
            }

            return(currentColor);
        }
예제 #3
0
 private void btnColorDialog_Click(object sender, EventArgs e)
 {
     using (ColorPickerForm dialogColor = new ColorPickerForm(Color.FromArgb(tbRed.Value, tbGreen.Value, tbBlue.Value)))
     {
         if (dialogColor.ShowDialog() == DialogResult.OK)
         {
             Color color = dialogColor.NewColor;
             tbRed.Value   = color.R;
             tbGreen.Value = color.G;
             tbBlue.Value  = color.B;
             DrawRedGreenBlue();
         }
     }
 }
예제 #4
0
        public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
        {
            if (value.GetType() != typeof(Color))
            {
                return(value);
            }

            IWindowsFormsEditorService svc = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService));

            if (svc != null)
            {
                Color color = (Color)value;

                using (ColorPickerForm form = new ColorPickerForm(color))
                {
                    if (svc.ShowDialog(form) == DialogResult.OK)
                    {
                        return((Color)form.NewColor);
                    }
                }
            }

            return(value);
        }