将DataContext设置为整个窗口或将ItemSsource设置为单独控件

时间:2011-11-18 16:23:25

标签: wpf

什么是可取的?

dataGrid1.ItemsSource = data;

或者:

public MainWindow()
....
this.DataContext = data;
....

<DataGrid ItemsSource="{Binding}

2 个答案:

答案 0 :(得分:1)

在我看来,这取决于您使用的设计。

如果您正在使用MVVM模式,那么毫无疑问:您将始终使用ViewModel作为View的DataContext。

如果您只是想在不使用MVVM的情况下将列表绑定到ItemsSource,我宁愿您使用第一种情况。

答案 1 :(得分:0)

这取决于具体情况。

如果您的应用程序中有两个网格,并且每个网格都需要自己不同的数据源。在MainWindow上设置不会有帮助。