Дочерний источник привязки, связанный с дочерним набором сущностей, не обновляется

У меня есть таблица SampleData с дочерней таблицей Measurements. В моей WinForm, frmMain, один объект SampleData связан с SampleDataBindingSource; MeasurementsBindingSource имеет SampleDataBindingSource в качестве источника данных и Measurements в качестве DataMember. Набор текстовых полей привязан к SampleDataBindingSource; сетка данных связана с MeasurementsBindingSource.

Для frmMain у меня также есть класс презентатора preMain, который содержит свойство CurrentSample типа SampleData.SampleDataBindingSource.DataSource привязан к свойству CurrentSample preMain.

Когда достаточное количество свойств в измерениях было назначено, оно вычисляет FiringFactor и, если значение FiringFactor не равно 1, оно добавляет другой элемент измерения в набор сущностей Measurement для CurrentSample:

Partial Class Measurement

    Private Sub UpdateFiringFactor()
        Dim necessaryDataIsAvailable As Boolean = (Me.CrucibleMass IsNot Nothing And _
                                                   Me.CrucibleSampleFiredMass IsNot Nothing And _
                                                   Me.CrucibleSampleMass IsNot Nothing)
        If necessaryDataIsAvailable Then
            Me.FiringFactor = CDbl((Me.CrucibleSampleFiredMass - Me.CrucibleMass) / (Me.CrucibleSampleMass - Me.CrucibleMass))
            If Me.FiringFactor <> 1 Then
                Me.SampleData.AddNewMeasurement()
            End If
        End If
    End Sub

    Private Sub OnCrucibleMassChanged()
        UpdateFiringFactor()
    End Sub


    Private Sub OnCrucibleSampleFiredMassChanged()
        UpdateFiringFactor()
    End Sub


    Private Sub OnCrucibleSampleMassChanged()
        UpdateFiringFactor()
    End Sub
End Class

Когда я ввожу значения для CrucibleMass, CrucibleSampleMass и CrucibleSampleFiredMass в datagridview, метод UpdateFiringFactor работает правильно, и я в итоге получаю другой элемент Measurement, добавленный в набор сущностей Measurements CurrentSample. Однако в сетке данных новая строка не отображается, а у MeasurementsBindingSource есть только 1 запись (ноCurrentSample.Measurements.Count = 2).

Почему изменения вCurrentSample.Measurements не распространяться наMeasurementsBindingSource? я пыталсяMeasurementsBindingSource.ResetBindings(False), MeasurementsDataGridView.Refresh, SampleDataBindingSource.ResetBindings(False), но ничего не обновляетMeasurementsBindingSource или его датагридвью.

Ответы на вопрос(1)

Ваш ответ на вопрос