lxst
@lxst
Студент программист

C#| winforms | Кнопка с меню | Как создать кнопку такого вида?

На этапе дизайна придумал такую кнопку, встал вопрос как реализовать такое?
т.е по нажатию на левую часть выполняется основной функционал кнопки, а по нажатию на правую часть
открывается меню кнопки или другое действие.
6153572e74061282394063.png
Буду благодарен за ответ или ссылку на что-то подобное!
  • Вопрос задан
  • 478 просмотров
Решения вопроса 1
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
возьмите за основу
https://stackoverflow.com/questions/1597320/split-...
плюс добавьте кастомный рендерер
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@none7
Создаешь кастомный Control. Рисуешь в нём это всё через Graphics с учётом разного размера и разного dpi(попутно проклинаешь себя за свою креативность). Переопределяешь метод OnClick и в нём получаешь координаты клика на поверхности контролла this.PointToClient(Cursor.Position). Высчитав в какой части контролла установлен курсор, реализуешь различное поведение для левой и правой части.
Если нужна ещё и возможность работы через клавиатуру, без мыши, то придётся создавать два контролла и ставить их рядом.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы