我有一个使用 aParentObject
作为其 DataContext 的控件。ParentObject
有一个称为ChildObject
可能更改的属性。当它发生时,ParentObject
引发 PropertyChanged 事件。
该控件具有 XAML来ListView
为. 当 中的属性更改时,将重新创建整个视图,这意味着实例化了新控件。List
ChildObject
ChildObject
ParentObject
它ListView
实际上比下面的示例复杂得多,因此重新创建它是处理器密集型的并且需要很长时间。
我还有哪些其他选择?我可以ListView
为每个缓存整个ChildObject
吗?我该怎么做呢?
<ListView ItemsSource="{Binding ParentObject.ChildObject.List}">
<ListView.View>
<GridView>
<GridViewColumn Header="Error">
<GridViewColumn.CellTemplate>
<DataTemplate>
<local:ErrorControl DataContext="{Binding ErrorCollection}" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>