C# Цвет фона кнопки - PullRequest
0 голосов
/ 04 мая 2020

У меня есть Windows Форма, и я хочу сделать современный дизайн. У меня просто проблема со стилем кнопок, вы можете мне помочь?

Я хочу удалить или скрыть цвет фона при нажатии кнопки, мне удалось удалить цвет фона, когда мышь поверх компонента со следующим кодом:

FlatAppearance.MouseOverBackColor = System.Drawing.Color.Transparent;

Теперь мне нужно удалить или скрыть это (серый фон):
Форма изображения

Как мне сделать это ?

Спасибо!

1 Ответ

0 голосов
/ 04 мая 2020

Я получил решение со многими попытками.
Просто измените FlatAppearance.MouseOverBackColor и FlatAppearance.MouseDownBackColor на цвет фона формы или элемента, к которому она прикреплена.

Пример: у вас есть формы с панелью, цвет панели красный, поэтому установите атрибуты на красный или просто поставьте «Color.Transparent»

buttonName.FlatAppearance.MouseOverBackColor = Color.FromArg(255, 0, 0) // red;
buttonName.FlatAppearance.MouseDownBackColor = Color.Transparent; // same result

Итак, если у вас есть класс, который расширяет Объект кнопки, просто создайте код следующим образом:

public class MyButton : Button
{
        public MyButton()
        {
            FlatAppearance.MouseOverBackColor = Color.Transparent; // or Color.[Preference]
            FlatAppearance.MouseDownBackColor = Color.Transparent; // or Color.[Preference]
        }

        // Rest of your code...
}

В противном случае выполните foreach, как показано ниже

foreach (var button in this.Controls.OfType<Button>())
{
         button.FlatAppearance.MouseOverBackColor = Color.Transparent; // or Color.[Preference]
         button.FlatAppearance.MouseDownBackColor = Color.Transparent; // or Color.[Preference]
}

Приведенные выше коды являются примерами того, как каждый может создать свой собственный лог c, если сомневаюсь, я могу вам помочь.

...