Как я могу изменить цвет флажка на темно-серый (отключить как) в C #? - PullRequest
2 голосов
/ 05 октября 2011

Я создал собственное дерево флажков и хочу, чтобы первый флажок был темно-серого цвета вместо белого (сам флажок не его текст ..)

*. Пользовательское дерево флажков - это несколько флажков, которые упорядочиваются в разных местах в форме.

как я могу это сделать?

1 Ответ

1 голос
/ 05 октября 2011

Я не думаю, что есть прямой способ сделать это. Однако вы можете создать свой собственный CheckBox, используя кнопку и метку.

Изменить фоновое изображение кнопки или цвет на события, такие как «button1_Click».

Внутри события вы можете сделать флаг, который говорит, проверено ли это или нет, и изменять его при каждом событии щелчка. Когда флаг имеет значение «true», фоновое изображение будет изображением с «V», а когда оно «false», оно будет заменено изображением без «V».

Вместо вызова checkBox1.Checked вы можете проверить, является ли флаг истинным или ложным.

Если хотите, вы можете подготовить свою серую кнопку / флажок из этого изображения: http://www.uni -graz.at / ~ katzer / pictures / spice_checkbox.png

Если вам нужна помощь в создании двух изображений, вы можете написать мне по электронной почте, и я сделаю это.

Код может быть таким:

//"checked" and "notChecked" are the images names.


private void button1_Click(object sender, EventArgs e)
{
   if(checkedFlag == true)
   {
    button1.BackgroundImage = Properties.Resources.notchecked;
    checkedFlag = false;
   }     
   else
   {
    button1.BackgroundImage = Properties.Resources.checked;
    checkedFlag = true;
   }
}

Вам нужно только установить начальное значение флага как false и сделать изображение центрированным или растянутым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...