繁体   English   中英

C#从字符串解析为Keys

[英]C# parse from string to Keys

目前我必须以某种方式从字符串解析到Keys。 所以基本上作为输入我得到类似“Keys.Shift”的东西,并且我需要能够将其解析为键,以便我可以在应用程序中进一步使用它。

我找到了一个解决方案,但它不起作用:

Keys key;
Enum.TryParse("Enter", out key);

我得到一个“静态类型不能用作类型参数”。 有人知道解决方法或其他什么吗?

提前致谢。

听起来你在某个地方有另一个名为Keys课程。 这是一个展示同样问题的例子(虽然你没有提到的key声明有第二个错误;我怀疑你也有错误):

using System;
using System.Windows.Forms;

static class Keys {}

class Program
{
    static void Main()
    {
        Keys key;
        Enum.TryParse("Enter", out key);
        Console.WriteLine(key);
    }
}

如果你注释掉static class Keys {} ,代码编译得很好,这就是为什么我怀疑你在某个地方得到了那个类 - 或者是一个using指令从另一个库中带来了类似的东西。

最简单的解决方法是完全限定您的意思是哪种Keys类型:

using System;
using System.Windows.Forms;

static class Keys {}

class Program
{
    static void Main()
    {
        System.Windows.Forms.Keys key;
        Enum.TryParse("Enter", out key);
        Console.WriteLine(key);
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM