我试图在控件泛型中将bindingSource声明为泛型
public partial class ABMControl<T> : UserControl
{
public ABMControl()
{
InitializeComponent();
}
}
partial class ABMControl<T>
{
...
private void InitializeComponent()
{
...
this.bindingSource.DataSource = typeof(T)
...
}
...
}
但对于设计师来说,这就是问题所在:
未能解析方法'InitializeComponent‘。解析器报告了以下错误“Type参数不支持的参数名称:Type parser”。请在“任务列表”中查找潜在错误。
发布于 2018-03-24 01:05:05
若要防止设计器错误,请在构造函数中设置绑定源的数据源。
当您将一段代码放入控件设计器的构造函数中时,反序列化器将不会尝试解析它。它也不会在您的控件的设计时运行,而在运行时和派生控件中,它也将运行。
以下是防止错误的措施:
public partial class ABMControl<T> : UserControl
{
public ABMControl()
{
InitializeComponent();
this.bindingSource.DataSource = typeof(T)
}
}
有关designer工作方式的更多信息,请查看下面的帖子,特别是查看包含几个错误但显示设计器的示例:
https://stackoverflow.com/questions/49459161
复制相似问题