Profile Picture

Crash when zooming chart (in obscure circumstances)

Posted By Kevin Harrison 11 Years Ago
Author
Message
Kevin Harrison
Posted 11 Years Ago
View Quick Profile
Supreme Being

Supreme Being (79 reputation)Supreme Being (79 reputation)Supreme Being (79 reputation)Supreme Being (79 reputation)Supreme Being (79 reputation)Supreme Being (79 reputation)Supreme Being (79 reputation)Supreme Being (79 reputation)Supreme Being (79 reputation)

Group: Forum Members
Last Active: 3 Years Ago
Posts: 176, Visits: 1,865

Hi

It is possible for my users to kick off redrawing of a chart while they are in the middle of a zoom (don't ask, I have to defend against this sort of stuff all the time). If this happens then I get  "Object reference not set to an instance of an object" and the partial stack trace:

   at Nevron.Chart.NNumericAxisPagingView.ConfigureAxisPagingInternal(NRange1DD range, Boolean allowAutoEnable)
   at Nevron.Chart.NAxisPagingView.ZoomIn(NRange1DD axisRange, Double dMinPageSize, Boolean l1ll11lIlIl)
   at Nevron.Chart.NAxisPagingView.ZoomIn(NRange1DD axisRange, Double dMinPageSize)
   at Nevron.Chart.l1l1lI1I1II.l1l1IIlIlI1(Double factor)
   at Nevron.Chart.lIl1lIII1l.Process(Double factor, NAnimationService service)
   at Nevron.Chart.l1lIl1llIIl.Process(NAnimationService service)
   at Nevron.Chart.NAnimationService.OnTimerTick()
   at Nevron.Chart.NTimer.OnTimerTick(Object sender, EventArgs e)
   at System.Windows.Forms.Timer.OnTick(EventArgs e)
   at System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)

It's an obscure edge case, but is it possible for you to add a null check in the code, or tell me how to implement an override. I already have a customised NDataZoomTool if there is anything I can access to check in the OnEndDrag method. I've tried

                ArrayList selectedCharts = this.GetSelectedCharts();                if (selectedCharts != null && selectedCharts[0] != null)                {                    base.OnEndDrag(sender, e);                }

but this doesn't trap the situation.

Thanks

Kevin






Similar Topics


Reading This Topic