Справка по C # для добавления переключателя / кнопки настроек для MenuStrip - PullRequest
1 голос
/ 08 июня 2010

Я новичок в языке C #, поэтому мне нужна помощь гениев по этой схеме: мне нужно добавить переключатель для полосы меню. Я уже изменил свойство CheckOnClick на true, но мне нужна опция для выбора переключателя. Вы можете увидеть это в строке меню калькулятора Windows (нажмите View). Как я могу получить к нему через свойство MenuStrip?

Ответы [ 2 ]

1 голос
/ 08 июня 2010

Если вы перейдете к

msdn.microsoft.com / EN-US / библиотека / ms404318.aspx

вы увидите, как это делается;)!

0 голосов
/ 06 января 2018

Я знаю, что это почти древний пост, но я подумал, что стоит упомянуть, что, хотя встроенная поддержка RadioButton MenueItem отсутствует, достаточно легко заставить их флажки вести себя таким образом. Начните с установки свойства CheckOnClick каждого элемента MenueItem равным FALSE. Затем примените один и тот же обработчик событий MouseDown к каждому элементу:

private void ToolStripMenueItem_MouseDown(object sender, MouseEventArgs e)
{
    var thisTsmi = (ToolStripMenuItem)sender;
    foreach (ToolStripMenuItem tsmi in thisTsmi.GetCurrentParent().Items)
    {
        tsmi.Checked = thisTsmi == tsmi;
    }
}

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

...