SAP Knowledge Base Article - Public

1566763 - CRVS2010 WPF Viewer error; "System.NullReferenceException was unhandled" PageControl.OnMouseMove

Symptom

  • The error is intermittent on mouse move event
  • Partial error details:

System.NullReferenceException was unhandled
Message="Object reference not set to an instance of an object."
Source="CrystalDecisions.Windows.Forms"
StackTrace: 3
at CrystalDecisions.Windows.Forms.PageControl.OnMouseMove(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseMove(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
.
.
.
.

Environment

  • VS2010
  • CRVS2010
  • Windows application
  • CRVS2010 WPF Viewer

Reproducing the Issue

  • Create a windows application using VS2010 and CRVS2010 windows viewer
  • Run the application and display the report in the Crystal Reports viewer
  • Move the mouse, intermittently (10 - 30% of the time - though almost 100% of the time has also been reported) the specified error is produced

Cause

  • The application is using framework 3.5 or lower
  • The following framework assemblies are referenced:

System.Core.dll, System.Xml.Linq.dll, System.Data.DataSetExtensions.dll

  • For applications using framewor 3.5 and higher
  • The error appears when the mouse howers over an area of the viewer where an object is expected to be but hasn't yet been rendered

Resolution

  • Framework 2.0 and 3.0 should not be referencing the specified assemblies
  • Using the assemblies results in the warning:

Namespace or type specified in the project-level Imports '<name of assembly above' doesn't contain any public member or cannot be found. Make sure the namespace or the type is defined and contains at least one public member. Make sure the imported element name doesn't use any aliases. projectname

  • Application using framework 3.5 and CRVS2010 should be able to use the assembly System.Xml.Linq.dll (v. 3.5.x)
  • Technical Escalation has been submitted for framework 3.5 and 4 (TE5000318553)
  • A work-around for applications using frmawork 3.5 and higher move the mouse off the form:
Cursor.Position = new Point(0,0);
 

Keywords

CR2010 2010 CR4VS2010 CR4VS VS2010 NET2010 , KBA , BI-DEV-NET-SDK , .NET SDK / COM SDK , Problem

Product

SAP Crystal Reports, developer version for Microsoft Visual Studio