Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Jman
44 / 44 / 25
Регистрация: 11.10.2015
Сообщений: 527
Завершенные тесты: 4
#1

Изменение стандартного цвета MenuItem и выпадающего меню - C#

08.06.2017, 09:55. Просмотров 191. Ответов 3
Метки нет (Все метки)

Добрый день всем. Есть приложение, задний фон у него черного цвета. Текст MenuStrip белый. Когда щелкаю по менюшке мышью, из-за белого цвета текста надпись практически не видно.
Я создал класс, где переопределил свойства цвета.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 public class MenuStripRenderer : ToolStripProfessionalRenderer
    {
        public MenuStripRenderer() : base(new Cols()) { }
    }
 
    public class Cols : ProfessionalColorTable
    {
        public override Color MenuItemSelected
        {
            // when the menu is selected
            get { return Color.Blue; }
        }
        public override Color MenuItemSelectedGradientBegin
        {
            get { return Color.Black; }
        }
        public override Color MenuItemSelectedGradientEnd
        {
            get { return Color.Orange; }
        }
 
    }
В форме работаю с событиями:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
   private void fileMenu_MouseHover(object sender, EventArgs e)
        {
            fileMenu.BackColor = Mr.ColorTable.MenuItemSelected;
        }
 
        private void fileMenu_MouseLeave(object sender, EventArgs e)
        {
            fileMenu.BackColor = Mr.ColorTable.MenuItemSelectedGradientBegin;
        }
 
        private void fileMenu_Click(object sender, EventArgs e)
        {
            fileMenu.BackColor = Mr.ColorTable.MenuItemSelected;
        }
Изменяется фон только верхней надписи, в данном случае "Файл". Как изменять цвет у надписи. Ну и интересно, как менюшке цвет изменить на темный, что бы как во всем приложении было.

Добавлено через 17 часов 7 минут
Нашел выход. Вот пример.

C#
1
2
3
4
5
6
7
8
9
private void windowToolStripMenuItem_MouseHover(object sender, EventArgs e)
        {
            windowToolStripMenuItem.ForeColor = Color.Black;
        }
 
        private void windowToolStripMenuItem_MouseLeave(object sender, EventArgs e)
        {
            windowToolStripMenuItem.ForeColor = Color.White;
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2017, 09:55
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Изменение стандартного цвета MenuItem и выпадающего меню (C#):

Изменение стандартного цвета выделения текста
Добрый день, подскажите с таким вопросом: При выделении текста к примеру в...

Создать меню с командами Input color, Change, Exit. Ввод и изменение цвета
Создать меню с командами Input color, Change, Exit, Help. При выборе команды...

Изменение цвета названия файла/папки (либо цвета подсветки)
Привет супер уважаемые супер форумчане!) Очень интересно, есть ли какой-то...

Копирование строки DataGridView из выпадающего меню
Добрый день, подскажите пожалуйста, как реализовать копирование строки...

изменение цвета
Подскажите пожалуйста, как создать на форме кнопку при нажатии на которую...

Изменение цвета
Подскажите, пожалуйста, как изменить цвет ячейки DGV или текста в ней....

3
ViterAlex
6353 / 3557 / 1460
Регистрация: 11.02.2013
Сообщений: 7,845
Завершенные тесты: 3
08.06.2017, 10:03 #2
Цитата Сообщение от Jman Посмотреть сообщение
Нашел выход.
Тогда есть смысл сделать свой класс от ToolStripMenuItem и там это прописать
0
Jman
44 / 44 / 25
Регистрация: 11.10.2015
Сообщений: 527
Завершенные тесты: 4
08.06.2017, 10:14  [ТС] #3
У меня теперь трабл...

Скриншот 1
Скриншот 2

Как правильно сделать, что бы когда менюшка открывалась, текст верхний был черный... Когда менюшка закрывается, снова белый.
0
Jman
44 / 44 / 25
Регистрация: 11.10.2015
Сообщений: 527
Завершенные тесты: 4
13.06.2017, 10:51  [ТС] #4
Ребят помогите? Как можно исправить?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.06.2017, 10:51
Привет! Вот еще темы с решениями:

Изменение цвета
Здравствуйте. Как сделать, чтобы изменялся цвет круга при выборе другого цвета...

Изменение цвета кнопки
Создаю двумерный массив (матрицу) из кнопок и отображаю его. Потом по нажатии...

Изменение цвета в RichTexBox
Здравствуйте. Не могу разобраться кое с чем: private void...

Изменение цвета listbox
привет всем! Если написал не туда то извините! Вообщем у меня есть не большая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru