C# 首次打开窗口时,Wpf数据网格不显示项目

C# 首次打开窗口时,Wpf数据网格不显示项目,c#,wpf,wpfdatagrid,C#,Wpf,Wpfdatagrid,在我的wpf应用程序中,我有一个数据网格,其项源绑定到一个可观察的集合。集合中的项是使用异步任务加载的。如果第一次打开该窗口,则该窗口不显示网格中的任何数据,而是显示空白行;如果关闭并重新打开该窗口,则该窗口将显示网格中的数据。任何人都知道为什么会这样。这是我的密码 <DataGrid x:Name="dtg" ItemsSource="{Binding Departments}" AutoGenerateColumns="false"

在我的wpf应用程序中,我有一个数据网格,其项源绑定到一个可观察的集合。集合中的项是使用异步任务加载的。如果第一次打开该窗口,则该窗口不显示网格中的任何数据,而是显示空白行;如果关闭并重新打开该窗口,则该窗口将显示网格中的数据。任何人都知道为什么会这样。这是我的密码

<DataGrid
        x:Name="dtg"
        ItemsSource="{Binding Departments}"
        AutoGenerateColumns="false"
        CanUserDeleteRows="False"
        CanUserReorderColumns="False"
        RowHeight="35"
        CanUserResizeColumns="False"
        CanUserResizeRows="False"
        CanUserSortColumns="True"
        Grid.Column="0"
        Grid.Row="2"
        Grid.ColumnSpan="5">
        <DataGrid.Columns>
            <DataGridTextColumn Binding="{Binding DepartmentId}" Header="Slno" />
            <DataGridTextColumn Binding="{Binding DepartmentName}" Header="Department" />
        </DataGrid.Columns>
    </DataGrid>
我已经试着修了30多分钟了。任何人都知道如何解决这个问题。

向可观察集合的setter添加了一个onPropertyChanged调用,一切都按预期进行

public ObservableCollection<Department> Departments {
        get { return _departments; }
        set {
            _departments = value;
            onPropertyChanged(nameof(Departments));
        }
    }
public ObservableCollection<Department> Departments {
        get { return _departments; }
        set {
            _departments = value;
            onPropertyChanged(nameof(Departments));
        }
    }