Hi again,
I am back with some more info. First of all I made a test application where you can easily switch between the renderer types.
Video here:
http://www.sourcedrive.net/lcu_sizing_bug2.mp4
The project is available here:
http://www.sourcedrive.net/ArctionResizeBug.zip
However, what is perhaps more interesting is that the application crashed several times with D3D11 rendering while I was trying to capture the above video. Looking at the error in the windows application log gives me the following callstack:
Application: ArctionResizeBug.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
at SharpDX.Direct3D11.DeviceContext.MapSubresource(SharpDX.Direct3D11.Resource, Int32, SharpDX.Direct3D11.MapMode, SharpDX.Direct3D11.MapFlags, SharpDX.DataBox ByRef)
at SharpDX.Direct3D11.DeviceContext.MapSubresource(SharpDX.Direct3D11.Resource, Int32, SharpDX.Direct3D11.MapMode, SharpDX.Direct3D11.MapFlags)
at SharpDX.Direct3D11.DeviceContext.MapSubresource(SharpDX.Direct3D11.Buffer, SharpDX.Direct3D11.MapMode, SharpDX.Direct3D11.MapFlags, SharpDX.DataStream ByRef)
at Arction.RenderingEngine11.RenderingEngine11.AD(SharpDX.Direct3D11.DeviceContext, SharpDX.Direct3D11.Buffer, System.Collections.IList, Int32, Int32, System.Threading.SpinLock)
at A.S.BB(A.VD, Boolean)
at Arction.RenderingEngine11.RenderingEngine11.WC(A.VD ByRef, Boolean)
at Arction.RenderingEngine11.RenderingEngine11.DrawWithDrawData(Arction.RenderingEngine.DrawData)
at Arction.RenderingEngine.RenderingEngineBase.DrawWithDrawData(System.Object)
at Arction.WinForms.Charting.LightningChartUltimate.BCD()
at Arction.WinForms.Charting.LightningChartUltimate.OAD()
at Arction.WinForms.Charting.LightningChartUltimate.NSC()
at Arction.WinForms.Charting.LightningChartUltimate.HSC()
at Arction.WinForms.Charting.LightningChartUltimate.OnPaint(System.Windows.Forms.PaintEventArgs)
at System.Windows.Forms.Control.PaintWithErrorHandling(System.Windows.Forms.PaintEventArgs, Int16)
at System.Windows.Forms.Control.WmPaint(System.Windows.Forms.Message ByRef)
at System.Windows.Forms.Control.WndProc(System.Windows.Forms.Message ByRef)
at System.Windows.Forms.ScrollableControl.WndProc(System.Windows.Forms.Message ByRef)
at System.Windows.Forms.ContainerControl.WndProc(System.Windows.Forms.Message ByRef)
at System.Windows.Forms.UserControl.WndProc(System.Windows.Forms.Message ByRef)
at Arction.WinForms.Charting.LightningChartUltimate.WndProc(System.Windows.Forms.Message ByRef)
at System.Windows.Forms.Control+ControlNativeWindow.OnMessage(System.Windows.Forms.Message ByRef)
at System.Windows.Forms.Control+ControlNativeWindow.WndProc(System.Windows.Forms.Message ByRef)
at System.Windows.Forms.NativeWindow.Callback(IntPtr, Int32, IntPtr, IntPtr)
Immediately after that error there is another one with the following info:
Faulting application name: ArctionResizeBug.exe, version: 1.0.0.0, time stamp: 0x5a663f07
Faulting module name: atidxx32.dll, version: 23.20.15007.1005, time stamp: 0x5a36c234
Exception code: 0xc0000005
Fault offset: 0x006185e9
Faulting process id: 0x6070
Faulting application start time: 0x01d393b96eff362a
Faulting application path: C:\Users\Bebbe\Documents\Visual Studio 2013\Projects\ArctionResizeBug\ArctionResizeBug\bin\Release\ArctionResizeBug.exe
Faulting module path: C:\WINDOWS\System32\DriverStore\FileRepository\c0322096.inf_amd64_7ff7d53c3793b9e4\atidxx32.dll
Report Id: 2e7eebf6-a675-4048-94ce-9eada71f628b
Faulting package full name:
Faulting package-relative application ID:
The file "atidxx32.dll" suggests that the driver somehow crashes. I can reproduce the crash fairly easily by simply resizing the window. If I don't resize the window the app stays stable. I can pan around the chart, and everything seems okay. So there is something going on with the resizing of the chart control that makes the AMD/ATI driver barf.
Hope this helps,
//Sebastian