C# 如何将VK_十进制映射到我自己的字符
每当有人按下numpad十进制键,即numpad上的“.”或“,”键时,我希望看到“*”或任何自定义字符 我目前的尝试是:C# 如何将VK_十进制映射到我自己的字符,c#,winforms,mapping,keycode,C#,Winforms,Mapping,Keycode,每当有人按下numpad十进制键,即numpad上的“.”或“,”键时,我希望看到“*”或任何自定义字符 我目前的尝试是: private bool numpadDecimal; private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { if (numpadDecimal) e.KeyChar = customNumpadDecimalCharacter; } private void t
private bool numpadDecimal;
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (numpadDecimal)
e.KeyChar = customNumpadDecimalCharacter;
}
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
numpadDecimal = (e.KeyCode == Keys.Decimal);
}
一般来说,这是可行的,但我更喜欢一种更直接的方法。有什么想法吗
编辑:我认为这是一个映射问题KeyCode=>Char。因此,我想知道我是否可以以某种方式覆盖windows映射。您当前的方法有什么不直接的地方?好问题。我将在我的帖子中澄清。您希望在应用程序中或在windows中全局使用此行为吗?如果有一个应用程序范围的解决方案,我很高兴听到您可以使用一个低级钩子来全局侦听击键、截获击键、取消击键和模拟按下其他键。你首先想要达到什么目标?