我在命名空间'MyControls'中创建了一个usercontrol'MyButton'
Namespace MyControls
<ToolStripItemDesignerAvailability(ToolStripItemDesignerAvailability.ToolStrip)>
Public Class MyButton
Inherits ToolStripButton
' Controls staff
End Class
End Namespace
使用设计器我的控件已添加到表单中。一切正常。但是在设计师做了一些改变后我得到了错误
Type 'MyProject.MyControls.MyButton' is not defined.
错误的代码行是:Me.ButtonClose = New MyProject.MyControls.MyButton()
问题是因为在项目中我有一个与项目名称相同的模块 - MyProject
和生成的代码New MyProject.MyControls.MyButton()
,试图在该模块中找到MyButton的类型。
手动更改设计器代码(添加Global
关键字或删除MyProject
前缀)将不起作用,因为在设计器中进行下一次更改后,代码将重新生成并且错误将会重新出现。
另一方面,设计师未在控件的定义中添加MyProject
命名空间
Friend WithEvents ButtonClose As MyControls.MyButton
问题:是否可以阻止设计人员添加MyProject
命名空间或删除Global
?因为我无法更改模块的名称 - 它已在其他项目中使用