This topic will give you guidelines for porting applications developed with version 3.0 to the new version.
In version 4.0, three new assemblies were added to the chart control:
Xceed.Chart.GraphicsCore.dll – core functionality for the graphics engines
Xceed.Chart.Graphics2D.dll – GDI+ rendering engine
Xceed.Chart.UIControls.dll – user interface controls
The assembly Xceed.Chart.GLCore.dll is renamed to Xceed.Chart.GraphicsGL.dll.
The following is the full list of assemblies of Xceed Chart for WinForms 4.0:
Xceed.Chart.Utilities.dll
Xceed.Chart.GraphicsCore.dll
Xceed.Chart.Graphics2D.dll
Xceed.Chart.GraphicsGL.dll
Xceed.Chart.UIControls.dll
Xceed.Chart.Standard.dll
Xceed.Chart.Core.dll
Xceed.Chart.dll (contains the Windows Forms control)
Xceed.Chart.Server.dll (contains the Web Forms control)
Xceed.Chart.DataManipulation.dll
We recommend that you take the following steps to update your project:
Make a backup copy of the application’s source code.
Remove the chart control from the forms of your application.
Uninstall the old version of the chart control.
Install version 4.0 of the chart control.
Add the new control to the Visual Studio toolbox and then place it in your application’s forms. If a problem occurs while inserting the control, you can manually add the chart control assemblies to the references of your project and then try again to place the control on the form.
In order to compile the project you will most probably have to make some changes to the source code because of the altered programming model of the chart control. The following topics describe these changes in detail to help you port the source code of your application.
All enumerations previously defined in Xceed.Chart.GLCore.dll are moved to Xceed.Chart.GraphicsCore.dll, and some of them are also renamed. The namespace Xceed.Chart.GLCore no longer exists, so in your source code you have to change “using Xceed.Chart.GLCore;” to “using Xceed.Chart.GraphicsCore;”
The following table describes the changes in regard to enumerations.
Version 3.0 | Version 4.0 | Remarks |
---|---|---|
Xceed.Chart.GLCore.AdvancedGradientScheme | Xceed.Chart.GraphicsCore.AdvancedGradientScheme | Moved |
Xceed.Chart.GLCore.PointShape | Xceed.Chart.GraphicsCore.AGPointShape | Moved and renamed |
Xceed.Chart.GLCore.MouseAction | Xceed.Chart.GraphicsCore.MouseAction | Moved |
Xceed.Chart.GLCore.MarginFitStrategy | Xceed.Chart.GraphicsCore.MarginMode | Moved and renamed |
Xceed.Chart.GLCore.GradientStyle | Xceed.Chart.GraphicsCore.GradientStyle | Moved |
Xceed.Chart.GLCore.GradientVariant | Xceed.Chart.GraphicsCore.GradientVariant | Moved |
Xceed.Chart.GLCore.HorizontalAlign | Xceed.Chart.GraphicsCore.HorzAlign | Moved and renamed |
Xceed.Chart.GLCore.VerticalAlign | Xceed.Chart.GraphicsCore.VertAlign | Moved and renamed |
Xceed.Chart.GLCore.MapLayout | Xceed.Chart.GraphicsCore.MapLayout | Moved |
Xceed.Chart.GLCore.TextureMode | Xceed.Chart.GraphicsCore.MapMode | Moved and renamed |
Xceed.Chart.GLCore.PatternType | use System.Drawing.Drawing2D.HatchStyle | Replaced with standard type declared in the System.Drawing.Drawing2D namespace. |
Xceed.Chart.Standard.LightScheme | Xceed.Chart.GraphicsCore.LightScheme | Moved |
Xceed.Chart.Standard.FillEffectType | Xceed.Chart.GraphicsCore.FillEffectType | Moved |
Xceed.Chart.Standard.BackplaneStyle | Xceed.Chart.GraphicsCore.BackplaneStyle | Moved |
Xceed.Chart.Standard.BevelStyle | Xceed.Chart.GraphicsCore.FrameBevelStyle | Moved and renamed |
Xceed.Chart.Standard.ProjectionType | Xceed.Chart.GraphicsCore.ProjectionType | Moved |
Xceed.Chart.Standard.LinePattern | Xceed.Chart.GraphicsCore.LinePattern | Moved |
Xceed.Chart.Standard.CursorType | Xceed.Chart.GraphicsCore.CursorType | Moved |
Xceed.Chart.Standard.PredefinedProjection | Xceed.Chart.GraphicsCore.PredefinedProjection | Moved |
Xceed.Chart.Standard.PredefinedFrameStyle | Xceed.Chart.Standard.PredefinedStandardFrame | Renamed |
Xceed.Chart.Standard.BackgroundFrameType | Xceed.Chart.GraphicsCore.FrameType | Moved and renamed |
Xceed.Chart.Standard.ImageFrameType | Xceed.Chart.GraphicsCore.ImageFrameType | Moved, some enumeration values are changed |
Xceed.Chart.Standard.PredefinedBackgroundFrame | This enumeration has been removed. Use Xceed.Chart.Standard.PredefinedStandardFrame for standard frames and Xceed.Chart.Standard.PredefinedImageFrame for image frames. | The programming model for frames has changed. |
Xceed.Chart.Server.ResponseType | The enumeration does not have HTMLImageMapPostback value | The HMTLImageMap response type now encapsulates all the functionality needed to produce postback. |
The following table describes the changes made in version 4.0 with regard to classes. The major change is that interactivity operations and some other classes are moved from the former Xceed.Chart.GLCore.dll (Xceed.Chart.GraphicsGL.dll in version 4.0) to the new assembly Xceed.Chart.GraphicsCore.dll. The namespace of the classes should be changed accordingly in your application source code.
Version 3.0 | Version 4.0 | Remarks |
---|---|---|
Xceed.Chart.Standard.Chart3DView | Xceed.Chart.Standard.View | Renamed |
Xceed.Chart.GLCore.GLAdvancedGradientPoint | Xceed.Chart.GraphicsCore.AdvancedGradientPoint | Renamed and moved |
Xceed.Chart.GLCore.GLAdvancedGradientDescription | Xceed.Chart.GraphicsCore.AdvancedGradientFill | Renamed and moved |
Xceed.Chart.GLCore.GLTrackballDragOperation | Xceed.Chart.GraphicsCore.TrackballDragOperation | Renamed and moved |
Xceed.Chart.GLCore.GLZoomDragOperation | Xceed.Chart.GraphicsCore.ZoomDragOperation | Renamed and moved |
Xceed.Chart.GLCore.GLOffsetDragOperation | Xceed.Chart.GraphicsCore.OffsetDragOperation | Renamed and moved |
Xceed.Chart.GLCore.GLTooltipInteractivityOperation | Xceed.Chart.CraphicsCore.TooltipInteractivityOperation | Renamed and moved |
Xceed.Chart.GLCore.GLCursorChangeInteractivityOperation | Xceed.Chart.GraphicsCore.CursorChangeInteractivityOperation | Renamed and moved |
Xceed.Chart.GLCore.GLEventInteractivityOperation | Removed. For details, see Events. | The programming model has changed |
Xceed.Chart.GLCore.GLInteractivityOperation | Xceed.Chart.GraphicsCore.InteractivityOperation | Renamed and moved |
Xceed.Chart.Standard.InteractivityOperationsCollection | Xceed.Chart.Core.InteractivityOperationsCollection | Renamed and moved |
Xceed.Chart.GLCore.GLTextureMapper | Xceed.Chart.GraphicsCore.FillEffectMapping | Renamed and moved |
class Xceed.Chart.Standard.Vector | struct Xceed.Chart.GraphicsCore.Vector | Moved, changed from class to struct |
Xceed.Chart.Standard.FrameProperties | Xceed.Chart.Standard.StandardFrame | StandardFrame is not derived from LineProperties |
Xceed.Chart.Standard.BackgroundFrame | Xceed.Chart.Standard.StandardFrame, Xceed.Chart.Standard.ImageFrame | The object model has changed. The functionality of BackgroundFrame is covered by the new classes StandardFrame and ImageFrame |
Xceed.Chart.ChartServer.HTMLImageMapPostback | The class has been removed. See Response Types and Browser Detection. | The HMTLImageMap response type now encapsulates all the functionality needed to produce postback. |
Some properties and methods of the chart objects are changed in order to expose new features or comply with changes in the programming model. Most of the changes concern classes related to the drawing engine like FillEffect, Text, Backplane, etc. The following table displays these changes.
Version 3.0 | Version 4.0 | Remarks |
---|---|---|
Xceed.Chart.Chart3DView |
Xceed.Chart.View |
|
Xceed.Chart.MarginFitStrategy | Xceed.Chart.MarginMode |
|
Settings.RenderToBitmap | Settings.RenderSurface | For example: chart.Settings.RenderToBitmap = false; must be replaced with: chart.Settings.RenderSurface = RenderSurface.Window; |
Text.HorizontalAlign | Text.HorzAlign |
|
Text.VerticalAlign | Text.VertAlign |
|
Text.Color | Text.FillEffect.Color | The Text object has a fill effect instead of color. |
Text.OffsetX | Text.Offset.X |
|
Text.OffsetY | Text.Offset.Y |
|
Text.ShadowColor | Text.Shadow.Color | The shadow properties are controlled by a Shadow object. |
Text.HasShadow | Text.Shadow.Type | The shadow properties are controlled by a Shadow object. |
Text.ShadowOffsetX | Text.Shadow.Offset | The shadow properties are controlled by a Shadow object. |
Text.ShadowOffsetY | Text.Shadow.Offset | The shadow properties are controlled by a Shadow object. |
Backplane.InflateWidth | Backplane.Inflate.Width |
|
Backplane.InflateHeight | Backplane.Inflate.Height |
|
Backplane.HasShadow | Backplane.Shadow.Type | The shadow properties are controlled by a Shadow object. |
Backplane.ShadowFillEffect | Backplane.Shadow.Color | The shadow properties are controlled by a Shadow object. |
Backplane.ShadowOffsetX | Backplane.Shadow.Offset.X | The shadow properties are controlled by a Shadow object. |
Backplane.ShadowOffsetY | Backplane.Shadow.Offset.Y | The shadow properties are controlled by a Shadow object. |
Backplane.Frame | Backplane.StandardFrame | The FrameProperties is replaced by StandardFrame. |
Background.Frame | Background.StandardFrame, Background.ImageFrame | The BackgroundFrame object is divided into StandardFrame and ImageFrame objects, each controlling the properties of the respective type of frame. The FrameType property selects one of the two frame types. |
Watermark.Color | Watermark.FillEffect |
|
Watermark.HorizontalAlign | Watermark.HorzAlign |
|
Watermark.VerticalAlign | Watermark.VertAlign |
|
Watermark.ImageFileName | Watermark.FillEffect.ImageFileName | Recommended to use SetImage function of the FillEffect object. |
DataLabels.HorizontalAlign | DataLabels.HorzAlign |
|
DataLabels.VerticalAlign | DataLabels.VertAlign |
|
Legend.HorizontalAlign | Legend.HorzAlign |
|
Legend.VerticalAlign | Legend.VertAlign |
|
FillEffect.FEType | FillEffect.Type |
|
FillEffect.TextureMapper | FillEffect.Mapping |
|
FillEffect.PatternType | FillEffect.HatchStyle | Requires System.Drawing.Drawing2D namespace. |
GLTextureMapper.TextureMode | FillEffectMapping.MapMode |
|
GLTextureMapper.TextureMapLayout | FillEffectMapping.MapLayout |
|
GLTextureMapper.XTextureScale | FillEffectMapping.HorizontalScale |
|
GLTextureMapper.YTextureScale | FillEffectMapping.VerticalScale |
|
LightSource.DirectionalSource | LightSource.LightSourceType |
|
The following table shows the events that changed.
Version 3.0 | Version 4.0 | Remarks |
---|---|---|
ChartServerControl.DataItem | ChartServerControl.DataPoint | To obtain the data point index you must use dataPointIndex instead of dataItemIndex in the EventArgs collection. |
ChartServerControl.ChartBackground | ChartServerControl.ControlBackground | Changed for compliance with the ChartElementType enumaration. |