我正在使用下面提到的代码来捕获按下的键。我之前在其他解决方案中使用过它并且在那里工作正常。但是现在显示错误
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;
}
}
最佳答案
这看起来像是可见性问题。您的方法 ProcessCmdKey
是 Protected
,而您的类 Message
可能声明的级别低于该级别。
您需要对另一个正在使用的方法/项目使用相同或更高的可见性,在这种情况下,您的类 Message
需要与您的函数具有相同的可见性级别.
您可以通过两种方式修复它,更改方法可见性或类 Message
。
关于c# - Processcmdkey 中的可访问性不一致错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30097582/