Как сделать кнопки панели инструментов похожими на переключатели в C#

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

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

Сначала код объявляет массивы для групп инструментов формы и цвета. Обработчик события Load формы инициализирует массив ShapeTools . Затем он проходит через массив, регистрирующий обработчик события toolShape_Click. Затем код повторяет эти шаги для инструментов цвета.

В следующем коде показаны обработчики событий toolShape_Click и toolColor_Click .

Эти обработчики событий просто вызывают метод SelectToolStripButton , передавая ему кнопку инструментальной панели, которая была нажата, и массив кнопок в своей группе. Следующий код показывает метод SelectToolStripButton , который выполняет всю интересную работу.

Этот метод проходит через кнопки панели инструментов в эксклюзивной группе. Для каждой кнопки он устанавливает свойство Checked на true, если это кнопка, которая должна быть выбрана. Он задает свойство Checked кнопки false, если оно не должно быть выбрано. Вот и все.

Обратите внимание, что программа устанавливает кнопки инструментальной панели « Проверенные обработчики событий во время выполнения в обработчике событий загрузки формы» . Это позволяет использовать конструктор форм для назначения другого обработчика события Click для каждой кнопки, как обычно, и кнопки будут поднять оба обработчика событий при нажатии. В этом примере все кнопки используют следующий обработчик события Click, назначенный во время разработки.

Этот обработчик событий просто отображает текст кнопки в окне консоли. Предположительно, в реальном приложении кнопки будут делать что-то более полезное.

Источник: csharphelper.com/blog/2014/08/make-toolstrip-buttons-act-like-radio-buttons-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)

Add a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *