Jump to content
Software FX Community

System.ArgumentException: Parameter is not valid. with the .NET ChartFX control


DanielL_550

Recommended Posts

Our customers are seeing a crash with the .NET control when one of our charts is displayed in a browser window that is 800X600. I have been unable to duplicate their problem when the chart is first drawn but I was able to create a crash with the same stack trace. I attached a Visual Studio 2008 project that demonstrates this problem. After the chart draws the first time, resize the browser height so only 1 axis label displays. I usually have a crash with the stack trace below. Thank you for your help.

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************System.ArgumentException: Parameter is not valid. at System.Drawing.Graphics.CheckErrorStatus(Int32 status) at System.Drawing.Graphics.DrawString(String s, Font font, Brush brush, RectangleF layoutRectangle, StringFormat format) at System.Drawing.Graphics.DrawString(String s, Font font, Brush brush, Single x, Single y, StringFormat format) at ChartFX.NetIEClient.Internal.GraphicsEx.DrawString(String s, Font font, Brush brush, Int32 x, Int32 y, StringFormat format) at ChartFX.NetIEClient.Internal.DrawText.a(IGraphicsEx A_0, Font A_1, Brush A_2, String A_3, Point A_4) at ChartFX.NetIEClient.Internal.DrawText.DrawString(IGraphicsEx gx, Font font, String text, Point pt) at ChartFX.NetIEClient.Axis.a(ad A_0, AxisPaintInfo& A_1, Int32 A_2, Int32 A_3, SectionAttributes& A_4, Double A_5, Int32 A_6, Int32 A_7, Int32& A_8, Int32& A_9, Boolean A_10, Double A_11, Double A_12, Boolean A_13) at ChartFX.NetIEClient.Axis.a(PaintMarkBase A_0, Rectangle[] A_1, RepaintFlags A_2, AxisPaint A_3, SectionAttributes& A_4, AxisPaintInfo& A_5, Double A_6, Double A_7) at ChartFX.NetIEClient.Axis.a(ad A_0, Rectangle[] A_1, RepaintFlags& A_2, AxisPaint A_3, AxisSection& A_4) at ChartFX.NetIEClient.AxisCollection.a(ad A_0, Rectangle[] A_1, AxisPaint A_2) at ChartFX.NetIEClient.Pane.a(ad A_0, Rectangle[] A_1, AxisPaint A_2) at ChartFX.NetIEClient.PaneCollection.a(ad A_0, Rectangle[] A_1, AxisPaint A_2) at ChartFX.NetIEClient.ad.b(Boolean A_0, Boolean A_1) at ChartFX.NetIEClient.ad.a(IFrame A_0, Int32& A_1) at ChartFX.NetIEClient.Chart.a(PaintBar A_0, IGraphicsEx A_1) at ChartFX.NetIEClient.k.a(PaintEventArgs A_0) at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer, Boolean disposeEventArgs) at System.Windows.Forms.Control.WmPaint(Message& m) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************mscorlib   Assembly Version: 2.0.0.0   Win32 Version: 2.0.50727.4200 (NetFxQFE.050727-4200)   CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll----------------------------------------System   Assembly Version: 2.0.0.0   Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)   CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll----------------------------------------ChartFX.NetIEClient   Assembly Version: 7.0.3306.26568   Win32 Version: n/a   CodeBase: http://localhost:3347/chartfx70/download/ChartFX.NetIEClient.dll----------------------------------------System.Windows.Forms   Assembly Version: 2.0.0.0   Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)   CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll----------------------------------------ChartFX.NetIEClient.Base   Assembly Version: 7.0.3306.26521   Win32 Version: n/a   CodeBase: http://localhost:3347/chartfx70/download/ChartFX.NetIEClient.Base.DLL----------------------------------------System.Drawing   Assembly Version: 2.0.0.0   Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)   CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll----------------------------------------Accessibility   Assembly Version: 2.0.0.0   Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)   CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Accessibility/2.0.0.0__b03f5f7f11d50a3a/Accessibility.dll----------------------------------------ChartFX.NetIEClient.Adornments   Assembly Version: 7.0.3306.26533   Win32 Version: n/a   CodeBase: http://localhost:3347/chartfx70/download/ChartFX.NetIEClient.Adornments.DLL----------------------------------------Microsoft.mshtml   Assembly Version: 7.0.3300.0   Win32 Version: 7.0.3300.0   CodeBase: file:///C:/Windows/assembly/GAC/Microsoft.mshtml/7.0.3300.0__b03f5f7f11d50a3a/Microsoft.mshtml.dll----------------------------------------System.Configuration   Assembly Version: 2.0.0.0   Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)   CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Configuration/2.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll----------------------------------------System.Xml   Assembly Version: 2.0.0.0   Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)   CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll----------------------------------------System.Data   Assembly Version: 2.0.0.0   Win32 Version: 2.0.50727.4016 (NetFxQFE.050727-4000)   CodeBase: file:///C:/Windows/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll----------------------------------------

************** JIT Debugging **************To enable just-in-time (JIT) debugging, the .config file for thisapplication or computer (machine.config) must have thejitDebugging value set in the system.windows.forms section.The application must also be compiled with debuggingenabled.

For example:

<configuration>   <system.windows.forms jitDebugging="true" /></configuration>

When JIT debugging is enabled, any unhandled exceptionwill be sent to the JIT debugger registered on the computerrather than be handled by this dialog box.

 

 

Link to comment
Share on other sites

  • 1 year later...

Hello. Did you manage to resolve this? I am getting the same error in CFX 7 for WinForms.

It happens sometimes when I zoom a part of a chart with multiple panes. Last few lines of the stack trace indicate that problem occurs during some text rendering:Stack trace: at System.Drawing.Graphics.CheckErrorStatus(Int32 status) at System.Drawing.Graphics.DrawString(String s, Font font, Brush brush, RectangleF layoutRectangle, StringFormat format) at System.Drawing.Graphics.DrawString(String s, Font font, Brush brush, Single x, Single y, StringFormat format) at ChartFX.WinForms.Internal.GraphicsEx.DrawString(String s, Font font, Brush brush, Int32 x, Int32 y, StringFormat format) at ChartFX.WinForms.Internal.DrawText.a(IGraphicsEx A_0, Font A_1, Brush A_2, String A_3, Point A_4) at ChartFX.WinForms.Internal.DrawText.DrawString(IGraphicsEx gx, Font font, String text, Point pt) at ChartFX.WinForms.Axis.a(t A_0, AxisPaintInfo& A_1, Int32 A_2, Int32 A_3, SectionAttributes& A_4, Double A_5, Int32 A_6, Int32 A_7, Int32& A_8, Int32& A_9, Boolean A_10, Double A_11, Double A_12, Boolean A_13) at ChartFX.WinForms.Axis.a(PaintMarkBase A_0, Rectangle[] A_1, RepaintFlags A_2, AxisPaint A_3, SectionAttributes& A_4, AxisPaintInfo& A_5, Double A_6, Double A_7) at ChartFX.WinForms.Axis.a(t A_0, Rectangle[] A_1, RepaintFlags& A_2, AxisPaint A_3, AxisSection& A_4) at ChartFX.WinForms.AxisCollection.a(t A_0, Rectangle[] A_1, AxisPaint A_2) at ChartFX.WinForms.Pane.a(t A_0, Rectangle[] A_1, AxisPaint A_2) at ChartFX.WinForms.PaneCollection.a(t A_0, Rectangle[] A_1, AxisPaint A_2) at ChartFX.WinForms.t.b(Boolean A_0, Boolean A_1) at ChartFX.WinForms.t.a(IFrame A_0, PaintBar A_1, Int32& A_2) at ChartFX.WinForms.Chart.a(PaintBar A_0, IGraphicsEx A_1) at ChartFX.WinForms.al.a(PaintEventArgs A_0) at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer, Boolean disposeEventArgs) at System.Windows.Forms.Control.WmPaint(Message& m) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

Link to comment
Share on other sites

Hi, did you manage to fix this?

We are having this same problem in Cfx 7 for WinForms. It happens sometimes when we zoom a part of a chart. Chart is divided into 2 panes.

Stack trace indicates that the exception is thrown sometimes during text rendering:

at System.Drawing.Graphics.CheckErrorStatus(Int32 status) at System.Drawing.Graphics.DrawString(String s, Font font, Brush brush, RectangleF layoutRectangle, StringFormat format) at System.Drawing.Graphics.DrawString(String s, Font font, Brush brush, Single x, Single y, StringFormat format) at ChartFX.WinForms.Internal.GraphicsEx.DrawString(String s, Font font, Brush brush, Int32 x, Int32 y, StringFormat format) at ChartFX.WinForms.Internal.DrawText.a(IGraphicsEx A_0, Font A_1, Brush A_2, String A_3, Point A_4) at ChartFX.WinForms.Internal.DrawText.DrawString(IGraphicsEx gx, Font font, String text, Point pt) at ChartFX.WinForms.Axis.a(t A_0, AxisPaintInfo& A_1, Int32 A_2, Int32 A_3, SectionAttributes& A_4, Double A_5, Int32 A_6, Int32 A_7, Int32& A_8, Int32& A_9, Boolean A_10, Double A_11, Double A_12, Boolean A_13) at ChartFX.WinForms.Axis.a(PaintMarkBase A_0, Rectangle[] A_1, RepaintFlags A_2, AxisPaint A_3, SectionAttributes& A_4, AxisPaintInfo& A_5, Double A_6, Double A_7) at ChartFX.WinForms.Axis.a(t A_0, Rectangle[] A_1, RepaintFlags& A_2, AxisPaint A_3, AxisSection& A_4) at ChartFX.WinForms.AxisCollection.a(t A_0, Rectangle[] A_1, AxisPaint A_2) at ChartFX.WinForms.Pane.a(t A_0, Rectangle[] A_1, AxisPaint A_2) at ChartFX.WinForms.PaneCollection.a(t A_0, Rectangle[] A_1, AxisPaint A_2) at ChartFX.WinForms.t.b(Boolean A_0, Boolean A_1) at ChartFX.WinForms.t.a(IFrame A_0, PaintBar A_1, Int32& A_2) at ChartFX.WinForms.Chart.a(PaintBar A_0, IGraphicsEx A_1) at ChartFX.WinForms.al.a(PaintEventArgs A_0) at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer, Boolean disposeEventArgs) at System.Windows.Forms.Control.WmPaint(Message& m) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

Link to comment
Share on other sites

  • 3 weeks later...

This problem has never been resolved for us. We know the problem is data and height dependent because in our case we can change the height and we do not get an exception. I spoke to Francisco Padron the Software FX CTO about this problem about a year ago and he asked for more data to recreate the problem. I just had a similar problem again today and got the data captured so I could send the capture to SoftwareFX support. I have attached the captured data and chart settings for my crash in the DebugTrend_01132011_08-30-48-27565.zip file. <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

You can capture your data and chart property settings by executing the following statement after the data and chart properties have been added but before any rendering or export.

 

ChartCtrl.Export(ChartFX.WebForms.FileFormat.Binary, Path.Combine(HttpContext.Current.Server.MapPath(@"./"), "Crash.bin"));

 

You can verify you have captured data that will demonstrate the crash by executing this statement

 

ChartCtrl.Import(FileFormat.Binary, Path.Combine(Server.MapPath(@".\"), "Crash.bin"));

 

and then allowing the chart to render normally.

 

I hope this helps.

 

Dan

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...