.Net KeyEventArgs返回vs enter

dnn*_*per 10 .net c# keyboard

在ac#.net应用程序中有这个:

string key = e.KeyCode.ToString();

在.net 1.1键="输入"

在.net 3.5 key ="return"

我的问题是他们为什么不同?

SLa*_*aks 14

Keys枚举具有相同的值EnterReturn (它也有一些其它重复的).框架选择了不同的价值ToString.


SLa*_*aks 9

以下是所有重复的名称:这是由LINQPad中的以下查询生成的:

Enum.GetNames(typeof(Keys))
    .GroupBy(k => Enum.Parse(typeof(Keys), k))
    .Where(g => g.Count() > 1)
    .Select(g => String.Join(", ", g.Select(k => k.ToString()).ToArray()))
Run Code Online (Sandbox Code Playgroud)
Enter, Return
CapsLock, Capital
HangulMode, HanguelMode, KanaMode
KanjiMode, HanjaMode
IMEAccept, IMEAceept
Prior, PageUp
PageDown, Next
Snapshot, PrintScreen
OemSemicolon, Oem1
Oem2, OemQuestion
Oem3, Oemtilde
Oem4, OemOpenBrackets
OemPipe, Oem5
OemCloseBrackets, Oem6
OemQuotes, Oem7
Oem102, OemBackslash
Run Code Online (Sandbox Code Playgroud)