2

假设我们有一个绑定到源的 ItemsControl。两者之间是否有任何性能差异

ItemsControl.DataContext = resultSet;

ItemsControl.ItemsSource = resultSet;

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

4

1 回答 1

11

好吧,性能差异并不重要,因为两条线做了完全不同的事情。DataContext 是 ItemsControl 的本地数据绑定的对象:

<ItemsControl Width={Binding Length} />

将对象集的 Length 属性作为 DataContext 并将其绑定到 ItemsControl 的 Width 依赖属性。

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

于 2009-08-21T07:34:13.137 回答