我试图禁用在单击datagridview左上角标题单元格时发生的“选择所有单元格”功能。关于另一个SO问题(here,我试图通过继承DataGridView然后重写OnCellMouseDown事件来执行此操作,如果单击左上角的单元格则什么也不做。
在MainForm.cs中
namespace MainProjectName
{
public partial class MainProjectName : Form
{
**misc form code here**
}
}
然后创建了一个新的替代DGV类OverrideTest.cs
namespace MainProjectName
{
public partial class OverrideTest : DataGridView
{
protected override void OnCellMouseDown(DataGridViewCellMouseEventArgs e)
{
if (e.RowIndex == -1 && e.ColumnIndex == -1) return;
base.OnCellMouseDown(e);
}
}
}
使用此设置,新的“ OverrideTest”将显示在工具箱中,并且我可以将自定义DataGridView成功拖动到表单上。但是,它无法编译并显示错误:
CS0426类型名称“ OverrideTest”在类型“ MainProjectName”中不存在
我在做什么错,您将如何解决这种类型的不存在错误?
答案 0 :(得分:0)
找出问题所在。
用于命名空间的名称与主表单类的名称匹配。
通过更改主表单类的名称和所有关联的引用,我可以摆脱此错误并使之正常工作。