尝试绑定从其他人创建的ObservableCollection时出现了一些问题。 首先,我需要绑定ActiveSketchs,其次我必须绑定Sketchs(这是ActivesSketchs.Union(InactiveSketchs)分开。从ObservableCollection在C#中创建ObservableCollection的数据绑定WPF
我想下面的代码会工作,但它并没有该ActiveSketch正确结合的作品,但不在Sketchs一个:
private ObservableCollection<Sketch> _sketchs;
public ObservableCollection<Sketch> Sketchs
{
get { return _sketchs = new ObservableCollection<Sketch>(ActiveSketchs.Union(InactiveSketchs)); }
set { _sketchs = value; }
}
private ObservableCollection<Sketch> _activeSketchs;
public ObservableCollection<Sketch> ActiveSketchs
{
get { return _activeSketchs; }
set { _activeSketchs = value; }
}
private ObservableCollection<Sketch> _inactiveSketchs;
public ObservableCollection<Sketch> InactiveSketchs
{
get { return _inactiveSketchs; }
set { _inactiveSketchs = value; }
}
这里就是我的源项目设置:
HeadbandRight.ItemsSource = Sketchs;
HeadbandLeft.ItemsSource = Sketchs;
MainScatterViewer.ItemsSource = ActiveSketchs;
究竟什么是你所得到的错误?请注意,无论何时您请求,Sketchs将始终是一个新实例。这是一个坏主意。而是倾听“ActiveSketchs”和“InactiveSketchs”中的更改并相应地更新“素描”。 –
我得到0错误,只是“草图”容器仍然无效。之后,我从愚蠢的角度为Sketch做了一个新实例...我将研究如何根据Active/InactiveSketchs更改更新Sketch,谢谢! –
你应该从构造函数中实例化,而不是属性。 – Xcalibur37