Как я могу изменить основной / задний цвет отключенного числового обновления? - PullRequest
1 голос
/ 20 марта 2012

Когда я отключил Числовой элемент управления UpDown , я хочу, чтобы пользователь все еще мог прочитать его значение. Но я не могу изменить Forecolor или Backcolor этого инструмента. Я пытаюсь использовать свойство ReadOnly вместо свойства Enabled / Disabled, но оно тоже не работает. Как я могу решить эту проблему?

Ответы [ 2 ]

0 голосов
/ 20 марта 2012

Я только что попробовал через VS2005 и простые WinForms. Я вставил в событие EnableChanged

private void numericUpDown1_EnabledChanged(object sender, EventArgs e)
{
   NumericUpDown nud = (NumericUpDown)sender;
   nud.BackColor = nud.Enabled ? Color.Yellow : Color.Red;
}

и добавил еще одну кнопку в форму, чтобы просто поменять ее включенное состояние

private void button2_Click(object sender, EventArgs e)
{
   this.numericUpDown1.Enabled = ! this.numericUpDown1.Enabled;
}

Если вы создадите свой собственный класс NumericUpDown, производный от базового класса NumericUpDown, и поместите его в него, он будет действовать для всех экземпляров ВАШЕГО класса, используемого в вашем приложении, без явного изменения этого цвета в каждой форме.

0 голосов
/ 20 марта 2012

Невозможно достичь этой цели с помощью управления работой рамы. Вы можете использовать пользовательское рисование для его реализации.

...