Breaking Changes for DXperience v2008 vol 3 (reporting, charting, gauges)

ctodx
30 October 2008

This is the first part of the Breaking Changes list for v2008 vol 3, covering changes to XtraCharts and XtraReports in WinForms and AS.NET, as well as XtraGauges (WinForms only, the ASP.NET version of our gauges product is known as ASPxGauges).

This list is not the What's New list for v2008 vol 3, but merely the changes we've had to make to DXperience in order to fix bugs, add new functionality, or improve the user experience. If you already have projects using DXperience, you will need to peruse this list in order to understand the changes you might need to make to your source code to support this new major release.

Note that we only publish the changes to the public interface of our controls. We reserve the right to change the protected, internal, or private interfaces when needed.

XtraCharts Suite

  • DateTime scale - The AxisBase.GridSpacing property is now measured in the measure units specified by the AxisBase.DateTimeGridAlignment property.

  • DateTime scale - The AxisRange.MinValueInternal and AxisRange.MaxValueInternal properties are now measured in the measure units specified by the AxisBase.DateTimeGridAlignment property.

  • DateTime scale - The BarSeriesView.BarWidth, Bar3DSeriesView.BarWidth, Bar3DSeriesView.BarDepth properties are now measured in the measure units specified by the Axis.DateTimeGridAlignment property.

  • DateTime scale - The FinancialSeriesView.LevelLineLength and FinancialDrawOptions.LevelLineLength properties are now measured in the measure units specified by the Axis.DateTimeGridAlignment property.

  • If several series contain different arguments of a Qualitative type, their order may be changed if some series have the sorting option enabled, while others don't.

  • The ChartControl.DateTimeOptions, WebChartControl.DateTimeOptions, XRChart.DateTimeOptions obsolete properties have been removed.
    Use the AxisBase.DateTimeOptions property instead.

  • The ConstantLine.Value, CustomAxisLabel.Value and the StripLimit.Value obsolete properties have been removed.
    Use the AxisValue property instead.

  • The DateTimeOptions.MeasureUnit obsolete property has been removed.
    Use the AxisBase.MeasureUnit property instead.

  • The PercentOptions.ValuePercentPrecision obsolete property has been removed.
    Use the PercentageAccuracy property instead.

  • The PointOptions.BeginText, PointOptions.EndText, PointOptions.Separator obsolete properties have been removed.
    Use the Pattern property instead.

  • The ScrollingRange.AlwaysShowZeroLevel property value should now be explicitly set.

  • The Series.Label property for the StackedAreaSeriesView type now returns an object of the StackedAreasSeriesLabel type instead of PointSeriesLabel.
    This is required to return the OverlappingOptions object instead of the PointOverlappingOptions object for the SeriesLabelBase.OverlappingOptions property.

  • The SideMarginsEnabled property's behavior (when adding or removing series at runtime, or changing a series view at runtime) was changed.
    Previously, if the Series.View property value was changed at runtime, or the ChartControl.Series collection was changed (either new series were added or some existing series were removed from this collection), the Axis.Range.SideMarginsEnabled property might inadvertently change its value. Now these operations don't have any effect on the SideMarginsEnabled property value.

XtraGauges

  • A new assembly has been added to store presets data: XtraGauges.Presets.
    The presets data was moved to this assembly from the XtraGauges.Win.Design assembly.

  • All platform-independent code has been moved to the XtraGauges.Core assembly.

  • BaseTextAppearance: The Format property is now of type StringFormatObject.
    The native StringFormat type was replaced by our own StringFormatObject.

  • Some properties now have different type converters and therefore their appearance has been changed in the Property Grid.
    This is caused by implementing editing for some type converters (BrushObject,ShaderObject... etc.), to correctly support the Visual Studio design time for ASPxGauges.

  • The GaugeBase class was renamed to BaseGaugeWin.

  • The Tickmark inheritance hierarchy was changed.
    In v2008 vol 2, the IMajorTickmark interface was inherited from IMinorTickmark. Now, in v2008 vol 3, the IMajorTickmark interface inherits from ITickmark.

XtraPrinting Library

  • If you create custom Print Preview forms, the new appearance of the Status Bar isn't applied until you choose the Update context link for the PrintBarManager in its smart tag.
    NOTE: All your custom changes to the PrintBarManager will be removed when you click on the Update context link.

  • Printing and exporting is now disabled until all pages are created.
    You shouldn't call a report's Print, PrintDlg, or any ExportTo~ methods right after calling the ShowPreview or ShowPreviewDialog methods since an exception will be raised because all pages might not be ready.
    To make sure that all pages have been created, you need to either call the XtraReport.CreateDocument method without any parameters, or call the XtraReport.CreateDocument(true) method and wait until the document has been fully created by polling the XtraReport.PrintingSystem.Document.IsCreating property value.

  • The DevExpress.XtraPrinting.IPageHeaderFooter interface has been removed.
    Actually, this interface couldn't be properly used in user applications, and now it is no longer necessary for internal purposes.

  • The IPageHeaderFooter Link.pageHF protected field has been removed.
    You don't need to use this property at all.

  • The obsolete ExportOptions.CompressPdfImages property has been removed.
    You should use the ExportOptions.Pdf.ImageQuality property instead.

  • The obsolete ExportOptions.HtmlCharSet property has been removed.
    You should use the ExportOptions.Html.CharacterSet and Mht.CharacterSet properties instead.

  • The obsolete ExportOptions.XlsNativeFormat property has been removed.
    You should use the Xls.UseNativeFormat property instead.

  • The obsolete Watermark.Transparency property has been removed.
    You should use the Watermark.TextTransparency and Watermark.ImageTransparency properties instead.

  • The progress bar is no longer visible if you only use a PrintControl to preview a document.
    The progress bar was moved to the status bar in order to incorporate a Stop button next to it. So, if you want to embed the progress bar and the Stop button into your custom Print Preview, you need to use the PrintBarManager component in addition to the PrintControl.

  • The types of the PrintingSystem.AfterPagePaint event handler and event args were changed.
    This was done in order to implement suggestion S91761.
    -- PageEventHandler was changed to PagePaintEventHandler;
    -- PageEventArgs was changed to PagePaintEventArgs.
  • The usage of the ProgressReflector class has been changed, and this class is no longer static.
    This was done in order to correctly implement suggestion AS3017.
    Note that you can find previous and updated approaches concerning the use of the ProgressReflector class in our Code Central here.

XtraReports Suite

  • If an XRLabel, XRPageInfo or XRBarCode is created at runtime, its Padding property will be set to its parent's Padding property value by default.
    This breaking change was caused by fixing issue B33057.
    The obsolete XRBarCode's Padding property of type int is changed to type PaddingInfo. The original property is now obsolete and hidden.
    Note that this breaking change has no effect if you add these controls at design time -- in this case a control's Padding property value is automatically changed to the value used in previous versions. And, in order to inherit the Padding property value from a control's parent, you will need to reset this property via the context menu in the Property Grid.
    So, all reports that were created with previous versions of XtraReports will be correctly de-serialized and are not affected by this breaking change.

  • It's now required to add a reference to the DevExpress.XtraVerticalGrid assembly if your application uses the End-User Designer.
    This was done to embed the PropertyGrid control from the XtraVerticalGrid Suite into the End-User Report Designer. Note that if you want to edit and recompile the end-user designer you will need licenses to the required products used in the designer or to DXperience WinForms, Enterprise, or Universal.

  • The obsolete XtraReport.HtmlCharSet property has been removed.
    You should use the ExportOptions.Html.CharacterSet and ExportOptions.Mht.CharacterSet properties instead.

  • The obsolete XtraReport.HtmlCompressed property has been removed.
    You should use the ExportOptions.Html.RemoveSecondarySymbols and ExportOptions.Mht.RemoveSecondarySymbols properties instead.

  • The obsolete XtraReportBase.RowIndex property has been removed.
    You should use the CurrentRowIndex property instead.

  • The obsolete XtraReportBase.SortFields property has been removed.
    You should use DetailBand's SortFields property instead.

Breaking Changes part 2 covering scheduling.
Breaking Changes part 3 covering XAF.
Breaking Changes part 4 covering miscellaneous changes.

Free DevExpress Products - Get Your Copy Today

The following free DevExpress product offers remain available. Should you have any questions about the free offers below, please submit a ticket via the DevExpress Support Center at your convenience. We'll be happy to follow-up.
No Comments

Please login or register to post comments.