Index: Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Forms/Views/HeightStructuresFailureMechanismResultView.cs =================================================================== diff -u -r94f68f51cd9b8fd8c0c162cf874ef7e4580b0ee4 -r1f7a833d643271fae126168babff9144312b090d --- Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Forms/Views/HeightStructuresFailureMechanismResultView.cs (.../HeightStructuresFailureMechanismResultView.cs) (revision 94f68f51cd9b8fd8c0c162cf874ef7e4580b0ee4) +++ Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Forms/Views/HeightStructuresFailureMechanismResultView.cs (.../HeightStructuresFailureMechanismResultView.cs) (revision 1f7a833d643271fae126168babff9144312b090d) @@ -25,7 +25,6 @@ using Core.Common.Base; using Ringtoets.Common.Data.AssessmentSection; using Ringtoets.Common.Data.Calculation; -using Ringtoets.Common.Data.FailureMechanism; using Ringtoets.Common.Data.Structures; using Ringtoets.Common.Forms.Helpers; using Ringtoets.Common.Forms.Views; @@ -49,10 +48,12 @@ /// Creates a new instance of . /// /// The assessment section the failure mechanism result belongs to. + /// The failure mechanism this view belongs to. /// The collection of failure mechanism section results. /// Thrown when any input parameter is null. public HeightStructuresFailureMechanismResultView( IAssessmentSection assessmentSection, + HeightStructuresFailureMechanism failureMechanism, IObservableEnumerable> failureMechanismSectionResults) : base(failureMechanismSectionResults) { @@ -61,7 +62,14 @@ throw new ArgumentNullException(nameof(assessmentSection)); } + if (failureMechanism == null) + { + throw new ArgumentNullException(nameof(failureMechanism)); + } + this.assessmentSection = assessmentSection; + FailureMechanism = failureMechanism; + DataGridViewControl.CellFormatting += ShowAssessmentLayerErrors; DataGridViewControl.CellFormatting += DisableIrrelevantFieldsFormatting; @@ -79,23 +87,21 @@ calculationGroupObserver = new RecursiveObserver( UpdateDataGridViewDataSource, c => c.Children); - } - public override IFailureMechanism FailureMechanism - { - set - { - base.FailureMechanism = value; + CalculationGroup observableGroup = failureMechanism.CalculationsGroup; - var calculatableFailureMechanism = value as ICalculatableFailureMechanism; - CalculationGroup observableGroup = calculatableFailureMechanism?.CalculationsGroup; + calculationInputObserver.Observable = observableGroup; + calculationOutputObserver.Observable = observableGroup; + calculationGroupObserver.Observable = observableGroup; - calculationInputObserver.Observable = observableGroup; - calculationOutputObserver.Observable = observableGroup; - calculationGroupObserver.Observable = observableGroup; - } + UpdateDataGridViewDataSource(); } + /// + /// Gets the height structures failure mechanism + /// + public HeightStructuresFailureMechanism FailureMechanism { get; } + protected override void Dispose(bool disposing) { DataGridViewControl.CellFormatting -= ShowAssessmentLayerErrors; @@ -115,7 +121,7 @@ return null; } - return new HeightStructuresFailureMechanismSectionResultRow(sectionResult, (HeightStructuresFailureMechanism) FailureMechanism, assessmentSection); + return new HeightStructuresFailureMechanismSectionResultRow(sectionResult, FailureMechanism, assessmentSection); } protected override void AddDataGridColumns()