public override void ViewDidLoad() { base.ViewDidLoad(); this.View.BackgroundColor = UIColor.DarkGray; // Perform any additional setup after loading the view, typically from a nib. _surfaceTop = new SCIChartSurface(); _surfaceTop.TranslatesAutoresizingMaskIntoConstraints = false; _surfaceBottom = new SCIChartSurface(); _surfaceBottom.TranslatesAutoresizingMaskIntoConstraints = false; _szem = new SCIMultiSurfaceModifier(GetClassForType(typeof(SCIZoomExtentsModifier))); this.View.AddSubview(_surfaceTop); this.View.AddSubview(_surfaceBottom); var viewsDictionary = NSDictionary.FromObjectsAndKeys(new NSObject[] { _surfaceTop, _surfaceBottom }, new NSObject[] { new NSString("_surfaceTop"), new NSString("_surfaceBottom") }); this.View.AddConstraints(NSLayoutConstraint.FromVisualFormat("H:|-[_surfaceTop]-|", 0, new NSDictionary(), viewsDictionary)); this.View.AddConstraints(NSLayoutConstraint.FromVisualFormat("V:|-[_surfaceTop]-(==1)-[_surfaceBottom(==_surfaceTop)]-|", 0, new NSDictionary(), viewsDictionary)); this.View.AddConstraints(NSLayoutConstraint.FromVisualFormat("|-[_surfaceBottom(==_surfaceTop)]-|", 0, new NSDictionary(), viewsDictionary)); AddAxes(_surfaceTop); AddAxes(_surfaceBottom); _surfaceTop.Annotations = _annotationCollection; CreateDataSeries(); CreateRenderableSeries(); AddModifiers(); }
void AddModifiers() { var xDragModifierSync = new SCIMultiSurfaceModifier(GetClassForType(typeof(SCIXAxisDragModifier))); var pinchZoomModifierSync = new SCIMultiSurfaceModifier(GetClassForType(typeof(SCIPinchZoomModifier))); var panZoomModifierSync = new SCIMultiSurfaceModifier(GetClassForType(typeof(SCIZoomPanModifier))); // retreiving XAxisDragModifier for customization var xAxisDragmodifier = ObjCRuntime.Runtime.GetNSObject <SCIXAxisDragModifier>(xDragModifierSync.ModifierForSurface(_surfaceTop).Handle); if (xAxisDragmodifier != null) { xAxisDragmodifier.DragMode = SCIAxisDragMode.Pan; xAxisDragmodifier.ClipModeX = SCIClipMode.None; } var legendCollectionModifier = new SCILegendModifier(); var groupModifier = new SCIChartModifierCollection(); groupModifier.Add(xDragModifierSync); groupModifier.Add(pinchZoomModifierSync); groupModifier.Add(legendCollectionModifier); _surfaceTop.ChartModifiers = groupModifier; var xAxisDragmodifierBottom = ObjCRuntime.Runtime.GetNSObject <SCIXAxisDragModifier>(xDragModifierSync.ModifierForSurface(_surfaceBottom).Handle); if (xAxisDragmodifierBottom != null) { xAxisDragmodifierBottom.DragMode = SCIAxisDragMode.Pan; xAxisDragmodifierBottom.ClipModeX = SCIClipMode.None; } var pinchZoomModifierBottom = pinchZoomModifierSync.ModifierForSurface(_surfaceBottom); var groupModifierBottom = new SCIChartModifierCollection(); if (xAxisDragmodifierBottom != null) { groupModifierBottom.Add(xDragModifierSync); } if (pinchZoomModifierBottom != null) { groupModifierBottom.Add(pinchZoomModifierSync); } _surfaceBottom.ChartModifiers = groupModifierBottom; }