public Axis GetAreaAxisX <TInvoker>(int index, TInvoker Invoker = null) where TInvoker : Control { if (Invoker != null) { lock (Locker[ChartMain]) return(Abbreviate.FormsControls.Invoke <Axis, TInvoker>(Invoker, () => GetAreaAxisX <TInvoker>(index, null))); } return(Objects.CloneJson(ChartMain.ChartAreas[index].AxisX, Newtonsoft.Json.ReferenceLoopHandling.Ignore));//ChartMain.ChartAreas[index].AxisX; }
public ThreadedChart Clone <TInvoker>(TInvoker Invoker = null) where TInvoker : Control { if (Invoker != null) { lock (Locker[ChartMain]) return(Abbreviate.FormsControls.Invoke <ThreadedChart, TInvoker>(Invoker, () => Clone <TInvoker>(null))); } ThreadedChart copy = Objects.CloneJson(this, Newtonsoft.Json.ReferenceLoopHandling.Ignore); //ThreadedChart copy = (ThreadedChart)this.MemberwiseClone(); return(copy); }