Xceed Chart for WinForms v4.4 Documentation
Welcome to Xceed Chart for WinForms v4.4 / User Guide / Porting from Version 3.0
In This Topic
    Porting from Version 3.0
    In This Topic

    This topic will give you guidelines for porting applications developed with version 3.0 to the new version.

    Assemblies

    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:

    1. Make a backup copy of the application’s source code.

    2. Remove the chart control from the forms of your application.

    3. Uninstall the old version of the chart control.

    4. Install version 4.0 of the chart control.

    5. 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.

    Enumerations

    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.

    Classes

    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.

    Properties and Methods

    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

     

    Events

    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.