Как получить кисти цвета? - PullRequest
0 голосов
/ 05 мая 2018

В FormDesign есть кнопки. Если нажата первая кнопка,

        brush = Brushes.Red;

есть коды для каждой кнопки. Я хочу получить кисти цвета на тот момент. Как я могу получить это как;

Color c = (color of brush);

Сюда?

Редактировать: я хочу сохранить данные о цвете в списке.

Ответы [ 3 ]

0 голосов
/ 05 мая 2018

Brush - родительский класс для кистей различного типа; только SolidBrush имеет свойство Color.

Так что вам нужно привести к SolidBrush:

Либо:

Brush b1 = Brushes.Red;
Color c1 = ((SolidBrush)b1).Color;

или

SolidBrush b2 = (SolidBrush)Brushes.Red;
Color c2 = b2.Color;
0 голосов
/ 05 мая 2018

Ниже кода показан щелчок кнопки, который меняет цвет кнопки, а цвет кнопки сохраняется в String

 private void button1_Click(object sender, EventArgs e)
      {
         Brush brush = new SolidBrush(Color.Red);
         button1.BackColor = ((SolidBrush)brush).Color;

         string getColor;
         getColor = button1.BackColor.ToString();
         MessageBox.Show($"Color of Button1  " + getColor);

      }

OR

private void button1_Click(object sender, EventArgs e)
      {
         Brush brush1 = Brushes.Red;
     button1.BackColor = ((SolidBrush)brush1).Color;

     string getColor1;
     getColor1 = button1.BackColor.ToString();
     MessageBox.Show($"Color of Button1  " + getColor1);

     //Similarly store other button colors in a string
     string getColor2 = "Orange"; string getColor3 = "Blue"; 

     //Store these string value in a list 
     List<string> colors = new List<string>();
     colors.Add(getColor1);
     colors.Add(getColor2);
     colors.Add(getColor3);
     foreach (string color in colors) { MessageBox.Show(color); }
      }

enter image description here

0 голосов
/ 05 мая 2018

Вы можете получить цвет используя Control.BackColor и Control.ForeColor.

...