我不确定“关键值”是否是正确的词,因为我相信的格式很少,我所说的是http://pastebin.com/XJVx1dB5这是格式,其中88是Z等。我希望我清楚。
我尝试了很多东西,但是从密钥转换器类的字符串函数转换是唯一一个远程关闭的。问题是,它根据我的意愿将“x”转换为88,但它无法转换“”或“[”,因为它期望“SPACE”(字符串)而不是单个空格作为我相信的字符。
我这样使用它,也许有另一个(正确?)版本使用它:
((int)kc.ConvertFromString(s))
所以我想做的就是把我的那些字符编成代码。我怎样才能做到这一点?
答案 0 :(得分:0)
尝试类似:
var stringValue = " ";
var intValue = (int)stringValue[0];
字符串是一个'字符数组' - 所以你需要做的是获取char [在这种情况下是第一个] - 并将其转换为int - 在这种情况下只需通过强制转换。
如果你想用enum做,那么你将不得不编写一个手动系统来将“”转换为Keys.Space。
答案 1 :(得分:0)
如果您仔细查看枚举键,您会发现[
没有值。
事实上,该字符(在我的键盘上)被报告为Oem4。
此代码有效:
var c = kc.ConvertFromString("Oem4");
然而,
var c = kc.ConvertFromString("[");
无效,因为[
不是您要转换的枚举的有效成员。
转换字符串后,您想要做什么?这可能有助于更好地回答您的问题。