WPF DataContext与ItemsSource性能

时间:2009-08-21 07:22:59

标签: wpf performance datacontext itemssource

假设我们有一个ItemsControl,它与源有关。

之间是否有任何性能差异
ItemsControl.DataContext = resultSet;

ItemsControl.ItemsSource = resultSet;

(在两种情况下都在XAML中正确绑定)

1 个答案:

答案 0 :(得分:11)

嗯,性能差异并不重要,因为这两行完全不同。 DataContext是ItemsControl的本地数据绑定取自的对象:

<ItemsControl Width={Binding Length} />

将对象的Length属性设置为DataContext,并将其绑定到ItemsControl的Width依赖属性。

另一方面,ItemSource是IEnumerable对象,应该迭代该对象以在控件内创建子项。 (ItemSource中的每个对象都将成为它创建的子项的DataContext)