2

在我的 WinForms 项目(VS2010,.NET 4.0)中,我有一个名为 的用户控件MyView,它是从System.Windows.Forms.UserControl. 然后我将此控件修改为通用用户控件:

Partial Class MyView(Of TEntity As {New, Class})
        Inherits System.Windows.Forms.UserControl

     ' source code here

End Class

不幸的是,VS Winforms Designer 自动生成的InitializeComponent()代码带有 vb.net 语法错误并产生编译错误:

    Dim resources As System.ComponentModel.ComponentResourceManager = 
New System.ComponentModel.ComponentResourceManager(GetType(MyView)) 

而不是上面的代码行,应该有:

    Dim resources As System.ComponentModel.ComponentResourceManager = 
New System.ComponentModel.ComponentResourceManager(GetType(MyView(Of TEntity)))

如何修复 VS2010 WinForms Designer 的这种行为?

4

1 回答 1

0

带有一些解释和建议解决方法的相关主题:Fix embedded resources for a generic UserControl

很可能它是 VS2010 的错误。

绕过方式与修复使用 VS Winforms Designer 与从通用类型派生的控件和表单的 VS 限制的已知方法非常相似。然而,它涉及创建额外的附件类。

于 2013-05-24T14:54:13.527 回答