2011-01-10 51 views
1

我有一个Silverlight形式,其中在我正在填充在窗体的构造函数一个DataGrid,下面是代码...Silverlight的电网加载但不显示数据

public partial class ManageArtists : UserControl 
{ 
    ChinookDomainContext cdContext = new ChinookDomainContext(); 

    public ManageArtists() 
    { 
     InitializeComponent(); 

     cdContext.Load(cdContext.GetArtistsQuery()); 

     dpArtistPager.Source = cdContext.Artists.OrderBy(artist => artist.Name); 
     dgArtistList.ItemsSource = cdContext.Artists.OrderBy(artist => artist.Name); 
    } 
} 

现在的问题是.. ..即使数据加载到网格中,它也不会显示任何内容,直到我单击网格的Header字段。我不明白为什么会发生这种情况?

有人可以解释我发生了什么!

谢谢

回答

1

在这一行 -

dgArtistList.ItemsSource = cdContext.Artists.OrderBy(artist => artist.Name); 

,你会发现,你的ItemsSource被设置为IOrderedEnumerable一个实例,..不支持属性更改通知。

要解决这个问题快速,轻松地换行集合中的ObservableCollection和您的数据应正确显示。

HTH