我有一个自定义控件:
public class Detail
{
public string Text {get; set;}
}
public class Header : Detail
{
public int Size {get; set;}
public ObservableCollection<Detail> Details;
}
public class MyControl : Control
{
public ObservableCollection<Header> Headers;
}
我将控件添加到表单中,添加一些Header对象,每个对象都添加了一些Detail对象。到目前为止一切正常。
但是,当我关闭表单并再次打开它时,我收到错误:
消息1方法&#39; System.Collections.ObjectModel.ObservableCollection`1 [[Utils.Header,Utils,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null]]。添加&#39;没找到。
formdesigner类中的代码是这样的:
Header header1 = new Utils.Header();
resources.ApplyResources(header1, "header1");
this.taskBar1.Headers.Add(header1); //This line causes the error
问题是什么?
答案 0 :(得分:0)
我将ObservableCollection更改为BindingList并在类上实现了INotifyPropertyChanged,看起来它工作正常。
注意:ObservableCollection用于WPF而不是WinForms!