c# - Processcmdkey 中的可访问性不一致错误

标签 c# .net windows-applications

我正在使用下面提到的代码来捕获按下的键。我之前在其他解决方案中使用过它并且在那里工作正常。但是现在显示错误

Inconsistent accessibility: parameter type 'ref Stock.Message' is less accessible than method 'Stock.Sales.ProcessCmdKey(ref Stock.Message, System.Windows.Forms.Keys)'

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)        
    {

     try

            {
                bool handled = false;

                if (keyData == Keys.Escape)//Text box reset on ESC key press
                {
                    Some Code();
                    return true;
                }
                //Data grid row focus move up and down with Up & DOWN key press
                return (handled || base.ProcessCmdKey(ref msg, keyData));
            }
            catch (Exception)
            {
                throw;
            }
        }

最佳答案

这看起来像是可见性问题。您的方法 ProcessCmdKeyProtected,而您的类 Message 可能声明的级别低于该级别。

您需要对另一个正在使用的方法/项目使用相同或更高的可见性,在这种情况下,您的类 Message 需要与您的函数具有相同的可见性级别.

您可以通过两种方式修复它,更改方法可见性或类 Message

关于c# - Processcmdkey 中的可访问性不一致错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30097582/

相关文章:

.net - .Net 的树状结构

.net - 在 Visual Studio 编辑器中检测事件

c# - C# 是通过引用还是作为副本将 List<T> 传递给方法?

c# - 编译器是否优化对 const 变量和文字 const 数字的操作?

c# - 防止 ORDER BY 子句中的 SQL 注入(inject)

c# - 如何检测用户何时使用 Microsoft.AspNet.Identity 登录

c# - Winforms 中的事件和 WPF 中的命令有什么区别?

c# - 如何将 Windows 服务安装到另一个系统?

c# - 以 html 格式从项目文件夹加载图像以在 webcontrol 中显示

C#如何上传大文件到ftp站点