Silverlight Grid已加载但未显示数据

时间:2011-01-10 05:57:48

标签: datagrid silverlight-4.0

我有一个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);
    }
}

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

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

谢谢

1 个答案:

答案 0 :(得分:1)

在这一行 -

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

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

要快速修复此问题,请轻松将该集合包装在ObservableCollection中,并且您的数据应正确显示。

HTH