public void RestoreState(SerializationInfoEx info, bool restoreCustomObjects) { this.Name = info.GetString("Name"); this.Height = info.GetInt32("Height"); _stateId = info.GetValue<Guid>("_stateId"); _titleFont = info.GetValue<Font>("_titleFont"); _titleFontBrush = info.GetValue<Brush>("_titleFontBrush"); _fill = info.GetValue<Brush>("_fill"); _axisLabelsFont = info.GetValue<Font>("_axisLabelsFont"); _xAxisLabelsFontBrush = info.GetValue<Brush>("_xAxisLabelsFontBrush"); _yAxisLabelsPosition = info.GetValue<YAxisLabelPosition>("_yAxisLabelsPosition"); _yAxisLabelsFontBrush = info.GetValue<Brush>("_yAxisLabelsFontBrush"); _xAxisLabelsFormat = info.GetString("_xAxisLabelsFormat"); _yAxisLabelsFormat = info.GetString("_yAxisLabelsFormat"); _labelsFont = info.GetValue<Font>("_labelsFont"); _labelsFontBrush = info.GetValue<Brush>("_labelsFontBrush"); _labelsFill = info.GetValue<Brush>("_labelsFill"); _labelsTopMargin = info.GetSingle("_labelsTopMargin"); _labelsMargin = info.GetSingle("_labelsMargin"); _showSeriesLabels = info.GetBoolean("_showSeriesLabels"); _showClippingRectangle = info.GetBoolean("_showClippingRectangle"); _unitUnificationOptimizationEnabled = info.GetBoolean("_unitUnificationOptimizationEnabled"); _smoothingMode = info.GetValue<SmoothingMode>("_smoothingMode"); _defaultAbsoluteSelectionMargin = info.GetSingle("_defaultAbsoluteSelectionMargin"); _scrollMode = info.GetValue<ScrollModeEnum>("_scrollMode"); _rightMouseButtonSelectionMode = info.GetValue<SelectionModeEnum>("_rightMouseButtonSelectionMode"); _selectionPen = info.GetValue<Pen>("_selectionPen"); _selectionFill = info.GetValue<Brush>("_selectionFill"); _additionalDrawingSpaceAreaMarginLeft = info.GetInt32("_additionalDrawingSpaceAreaMarginLeft"); _additionalDrawingSpaceAreaMarginRight = info.GetInt32("_additionalDrawingSpaceAreaMarginRight"); _actualDrawingSpaceAreaMarginLeft = info.GetInt32("_actualDrawingSpaceAreaMarginLeft"); _actualDrawingSpaceAreaMarginTop = info.GetInt32("_actualDrawingSpaceAreaMarginTop"); _actualDrawingSpaceAreaMarginRight = info.GetInt32("_actualDrawingSpaceAreaMarginRight"); _actualDrawingSpaceAreaMarginBottom = info.GetInt32("_actualDrawingSpaceAreaMarginBottom"); _actualDrawingSpaceAreaBorderPen = info.GetValue<Pen>("_actualDrawingSpaceAreaBorderPen"); _actualDrawingSpaceAreaFill = info.GetValue<Brush>("_actualDrawingSpaceAreaFill"); _limitedView = info.GetBoolean("_limitedView"); _seriesItemWidth = info.GetSingle("_seriesItemWidth"); _seriesItemMargin = info.GetSingle("_seriesItemMargin"); if (restoreCustomObjects && info.GetBoolean("customObjectsSaved")) {// Restore custom objects. _customObjectsManager.RestoreState(info); } else {// New clear custom objects. _customObjectsManager.Clear(); } _actualSpaceGrid = info.GetValue<ChartGrid>("_actualSpaceGrid"); _drawingSpaceGrid = info.GetValue<ChartGrid>("_drawingSpaceGrid"); _chartName = info.GetString("_chartName"); _appearanceScheme = info.GetValue<AppearanceSchemeEnum>("_appearanceScheme"); _autoScrollToEnd = info.GetBoolean("_autoScrollToEnd"); if (info.ContainsValue("_maximumXZoom")) { _maximumXZoom = info.GetSingle("_maximumXZoom"); } else { _maximumXZoom = null; } _xAxisLabelSpacing = info.GetSingle("_xAxisLabelSpacing"); if (AppearanceSchemeChangedEvent != null) { AppearanceSchemeChangedEvent(this, _appearanceScheme); } }