/// <summary> /// Очищает поля /// </summary> public void ClearFields() { flowLayoutPanelPerformances.Controls.Clear(); existPerformances.Clear(); addedPerformances.Clear(); _componentLifeLimit = new ComponentComplianceLifeLimitControl(_currentComponent); flowLayoutPanelPerformances.Controls.Add(_componentLifeLimit); if (_currentComponent != null) { flowLayoutPanelPerformances.Controls.Add(linkLabelAddNew); } }
/// <summary> /// Обновляет данные /// </summary> public void UpdateInformation() { flowLayoutPanelPerformances.Controls.Clear(); existPerformances.Clear(); addedPerformances.Clear(); List <ComponentDirective> detailDirectives = _currentComponent != null ? new List <ComponentDirective>(_currentComponent.ComponentDirectives.ToArray()) : new List <ComponentDirective>(); _componentLifeLimit = new ComponentComplianceLifeLimitControl(_currentComponent); foreach (Control c in flowLayoutPanelPerformances.Controls) { if (c is ComponentCompliancePerformanceControl) { ((ComponentCompliancePerformanceControl)c).Deleted -= CompliancePerformanceControlDeleted; } } flowLayoutPanelPerformances.Controls.Add(_componentLifeLimit); foreach (ComponentDirective t in detailDirectives) { //TODO:(Evgenii Babak) пересмотреть подход, мы не должны каждый раз создавать новые контролы (при обновлении DetailScreenNew) ComponentCompliancePerformanceControl compliancePerformanceControl = new ComponentCompliancePerformanceControl(t); if (detailDirectives.Count == 1) { compliancePerformanceControl.EnableExtendedControl = false; } compliancePerformanceControl.Deleted += CompliancePerformanceControlDeleted; existPerformances.Add(compliancePerformanceControl); flowLayoutPanelPerformances.Controls.Add(compliancePerformanceControl); } if (_currentComponent != null) { flowLayoutPanelPerformances.Controls.Add(linkLabelAddNew); } }