C # - сочетание клавиш Shift + некоторые символы не компилируются - PullRequest
1 голос
/ 20 января 2011

Я работаю в Visual Studio 2008 (framework 3.5) и пытаюсь добавить ярлык (например, Shift + D ) для menuStrip (точно для toolStrip в menuStrip), но я не могу.Я получаю сообщение об ошибке:

"Значение аргумента 'значение' (65604) недопустимо для типа Enum Keys.

Имя параметра: значение".Это показывает только с Shift Ctrl , Alt все в порядке.Даже когда я попробовал Ctrl + Shift + D , он работал, но не с Shift и буквой.

Ответы [ 3 ]

2 голосов
/ 20 января 2011

Вы не можете использовать клавишу Shift и букву, цифру или другой символ в качестве сочетания клавиш, поскольку клавиша Shift работает как модификатор - это все равно, что набирать A когда вы действительно имели в виду смещение + A .

РЕДАКТИРОВАТЬ: Я не нашел ничего в документах, которые это заявили, но вВ этом вопросе указано, что вы можете использовать ctrl или alt в сочетании с буквой или цифрой.Хотя, конечно, вы можете использовать shift с ctrl или alt в любой комбинации с другой клавишей!

0 голосов
/ 16 мая 2015

Вы могли бы переопределить это. Это позволит вам использовать Shift с другими клавишами, такими как Ctrl + Shift + Tab или Ctrl + таб н такой. Я столкнулся с той же проблемой, и вот как я решил свою проблему:

public class ExtendedTabControl: TabControl
{
    protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
    {
        if (keyData == (Keys.Control | Keys.Tab))
        {
            // Write custom logic here
            return true;
        }
        if (keyData == (Keys.Control | Keys.Shift | Keys.Tab))
        {
            // Write custom logic here
            return true;
        }
        return base.ProcessCmdKey(ref msg, keyData);
    }
}

Надеюсь, это поможет

0 голосов
/ 20 января 2011

Клавиша Shift - это клавиша-модификатор на клавиатуре, используемая для ввода заглавных букв и других альтернативных "верхних" символов Его можно использовать только для сочетаний клавиш с клавишами, которые не имеют альтернативного использования.

...