名字' Helper'在当前上下文中不存在

时间:2015-08-11 22:50:01

标签: c# compiler-errors syntax-error

在我的C#应用​​程序中,我使用MessageFilter作为全局键挂钩as suggested by T Perquin.

这是我目前的代码:

 class KeyboardMessageFilter : IMessageFilter
{
    public bool PreFilterMessage(ref Message m)
    {
        if (m.Msg == ((int)Helper.WindowsMessages.WM_KEYDOWN))
        {
            switch ((int)m.WParam)
            {
                case (int)Keys.Escape:
                    // Do Something
                    return true;
                case (int)Keys.Right:
                    // Do Something
                    return true;
                case (int)Keys.Left:
                    // Do Something
                    return true;
            }
        }

        return false;
    }
}

当我尝试编译并运行时(以确保语法正确),我收到此错误:
The name 'Helper' does not exist in the current context

究竟是什么'助手'以及如何解决此错误?

1 个答案:

答案 0 :(得分:2)

看起来WM_KEYDOWN是一个包含静态或常量变量的类,如Windows消息const int WM_KEYDOWN = 0x100; 。由于您只是使用它,您可以将其添加到您的文件中。

        // Create the workbook
        XLWorkbook workbook = new XLWorkbook();
        workbook.Worksheets.Add("Sample").Cell(1, 1).SetValue("Hello World");

        // Prepare the response
        HttpResponse httpResponse = Response;
        httpResponse.Clear();
        httpResponse.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
        httpResponse.AddHeader("content-disposition", "attachment;filename=\"HelloWorld.xlsx\"");

        // Flush the workbook to the Response.OutputStream
        using (MemoryStream memoryStream = new MemoryStream())
        {
            workbook.SaveAs(memoryStream);
            memoryStream.WriteTo(httpResponse.OutputStream);
            memoryStream.Close();
        }

        httpResponse.End();

以下是其他Keyboard Input Notifications,以备不时之需。