所以我希望能够将所有键添加到一个键数组中,以便我可以轻松地迭代它们并操纵它们。
所以我想要这样的东西:
一些伪代码。
Keys[] keys = ..All the keys..;
for(int i = 0; i<keys.Length; i++) {
//do something with the key here.
}
基本上我想要的是将对象'Keys'中的所有键(它是一个默认的Object,而不是我自己的)添加到Keys []数组中,这样我就可以逐个遍历这些键。
答案 0 :(得分:2)
如果您想将枚举System.Windows.Input.Key
转换为数组,那么您可以这样做:
Key[] keys = Enum.GetValues(typeof(Key)).Cast<Key>().ToArray();
当然你可以获得IEnumerable<Key>
IEnumerable<Key> keys = Enum.GetValues(typeof(Key)).Cast<Key>();
如果您的意思是要将枚举System.Windows.Forms.Keys
转换为数组,则应用相同的代码
Keys[] keys = Enum.GetValues(typeof(Keys)).Cast<Keys>().ToArray();