|


|
Breaking Changes in v2009 vol 3.1
This page lists important behavior and API changes, which were introduced in this version. 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 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.
Table of Contents
AgDataGrid Suite
BC404: The following members have been renamed. 1) AgDataGrid class
- DataRowCreated event - removed
- DelayedScrolling - renamed to AllowDelayedScrolling
- FrozenDelimiter - renamed to FrozenLine
- GroupSummaries - renamed to GroupSummary
- HorizontalScrollbarLayout - renamed to HorizontalScrollBarLayout
- ToggleGroupRowExpanding - renamed to ToggleGroupRowExpandedState
- Totals - renamed to TotalSummary
- RowVerticalLineBrush - renamed to VerticalLineBrush
- BeginEdit - renamed to ShowEditor
- EndEdit - renamed to CloseEditor
- CancelEdit - renamed to HideEditor
- GetListIndex - renamed to GetRowListIndex
2) AgDataGridCell class
- UpdateEditButtonsVisible - renamed to UpdateEditButtonsVisibility (and made not public)
3) AgDataGridColumn class
- ColumnHeadersFilterMode - renamed to FilterPopupMode
- CustomizationHeaderStyle - renamed to ColumnChooserHeaderStyle
- Frozen - renamed to FrozenStyle
- IsAllowedInColumnChooser - renamed to ShowInColumnChooser
4) AgDataGridGroupRow class
- SummaryValues - renamed to GroupSummaryValues
5) AgDataGridRow class
- Shift - renamed to HorizontalShift
- FrozenColumnLeftCount - renamed to FrozenLeftColumnCount
- FrozenColumnRightCount - renamed to FrozenRightColumnCount
AgLayoutControl
BC361: LayoutControl - AllowItemMoving has been renamed to AllowItemMovingDuringCustomization. BC7: LayoutGroup - IsItemLabelsAlignmentOwner has been removed, ItemLabelsAlignment added. BC240: LayoutItem - The default value of VerticalAlignment has been changed from Stretch to Top.
All ASP.NET Components
BC32: ASPxPopupControl - The ResizingMode property's type has been changed from "DevExpress.Web.ASPxPopupControl.ResizingMode" to "DevExpress.Web.ASPxClasses.ResizingMode" BC28: ASPxRoundPanel - The control now uses the PanelCollection and PanelContent classes from the DevExpress.Web.ASPxPanel namespace Two classes were purged:
DevExpress.Web.ASPxRoundPanel.PanelCollection
DevExpress.Web.ASPxRoundPanel.PanelContent
The ProjectConverter tool tries to automatically patch markup in .aspx, .ascx, .master, .skin files.
If the above-mentioned classes were used in code files, those must be patched manually. BC33: It's necessary to re-apply themes (using the ASPxThemeDelpoyer tool) and AutoFormats (in design mode) after upgrading from previous versions The Soft_Orange, Office2003_Blue, Office2003_Olive, Office2003_Silver CssPostfixes have been renamed to SoftOrange, Office2003Blue, Office2003Olive, Office2003Silver.
The skin files have been changed because we have started using css sprites to show images. BC345: Some classes have been renamed in DevExpress.Web DevExpress.Web.ASPxSiteMapControl.Column renamed to DevExpress.Web.ASPxSiteMapControl.SiteMapColumn
DevExpress.Web.ASPxTitleIndex.Column renamed to DevExpress.Web.ASPxTitleIndex.TitleIndexColumn
The ProjectConverter utility will try to patch markup files automatically, code files must be patched by hand.
ASPxGridView and Editors Suite
BC18: ASPxDateEdit - The EditFormatString property is now applied without ASPxDateEdit.EditFormat set to Custom. Previously the EditFormatString property took precedence over the EditFormat.
See B150505 for more details.
ASPxScheduler Suite
BC25: Smart Tag styles are no longer used You can edit the AppointmentDragToolTip.ascx, AppointmentToolTip.ascx and SelectionToolTip.ascx templates to modify the layout and appearance of the corresponding tooltips. BC46: The ASPxSchedulerOptionsBehavior.SmartTagsActive property no longer exists ToolTips are displayed instead of the Smart Tag. Use the ASPxSchedulerOptionsToolTips to specify tooltip options. BC36: The DoubleClick event is now preceded with a Click event When double clicking an appointment, two events are fired - Click and then DoubleClick. BC344: The SelectionChanged event behavior has been modified The ASPxClientScheduler.SelectionChanged event has been renamed to ASPxClientScheduler.SelectionChanging since it actually occurs before a selection is changed. A new ASPxClientScheduler.SelectionChanged event has been implemented and is raised after the selection is changed.
DXBars for WPF
BC343: There have been some changes in the theming link drag icon DevExpress.Wpf.Bars.BarDragType enum renamed and moved to DevExpress.Wpf.Core.DragType
DevExpress.Wpf.Core.DragType.Invalid ->
DevExpress.Wpf.Core.DragType.Remove
Some CustomizationThemeKeys have been removed
DragTypeIconContentStyle,
DragTypeRemoveIconTemplate,
DragTypeMoveIconTemplate,
DragTypeCopyIconTemplate
The drag icon should now be themed using DevExpress.Wpf.Core.DragIconControl
DXCarousel for WPF
DXCharts for WPF
BC23: AxisLabels - The axis labels position in the 3D XY-diagram has been changed, because the rendering algorithm has been changed. BC369: Series Labels - The connector line is now drawn to a label's center by default (previously, it was drawn to the label's edge). This breaking change may cause connector lines to be visible through labels, if the labels have a transparent background or foreground specified. BC407: The appearance of charts has been changed because charts now support the ISupportDXThemes interface. BC20: The Axis3D.LabelPosition attached property has been marked obsolete. The LabelPosition attached property of the Axis3D class is now obsolete. It is no longer used because the label position is calculated automatically. BC11: The BarSeries2D default model is now OutsetBar2DModel (previously it was FlatBarModel) BC17: The ChartControl.CustomStyle property has been removed. BC353: The ChartControl.StyleName property has been marked obsolete and is no longer used. Use the ChartControl.PaletteName property and the DevExpress.Wpf.Utils.Themes.ThemeManager class instead. BC10: The default values for the SeriesPoint.Value, BubbleSeries.Weight, FinancialSeries.LowValue, FinancialSeries.HighValue, FinancialSeries.OpenValue, FinancialSeries.CloseValue properties are now Double.NaN. In previous versions these properties were set to 0.0 by default. From now on, the newly created series points will be NaN (empty) by default.
DXCore for Visual Studio
DXDocking for WPF
DXEditors for WPF
BC416: ComboBoxEditItem's namespace has been changed to DevExpress.Wpf.Editors. The namespace for ComboBoxEditItem has been changed from DevExpress.Wpf.Editors.Popups to DevExpress.Wpf.Editors. BC419: Some events have been removed from the CheckEditSettings class. The following events have been removed:
- CheckEditSettings.Checked;
- CheckEditSettings.Unchecked;
- CheckEditSettings.Indeterminate.
Instead, it is necessary to use the corresponding value changing events of a control, which acts as a container for a CheckEdit editor.
DXGrid for WPF
BC30: An extra parameter has been added to several BaseEditSettings methods The following BaseEditSettings methods' calling syntax
public BaseEdit CreateEditor()
public virtual BaseEdit CreateEditor(bool assignEditorSettings)
public void ApplyToEdit(BaseEdit edit, bool assignEditorSettings)
have been replaced with
public BaseEdit CreateEditor(IDefaultEditorViewInfo defaultViewInfo)
public virtual BaseEdit CreateEditor(bool assignEditorSettings, IDefaultEditorViewInfo defaultViewInfo)
public void ApplyToEdit(BaseEdit edit, bool assignEditorSettings, IDefaultEditorViewInfo defaultViewInfo) BC27: GridMenuType.Cell =>RowCell The context menu can now be opened in the fit column and indicator area (see S133069) BC38: The DropPlace type has been moved to the DevExpress.Wpf.Core.Native namespace BC362: The HorizontalContentAlignment property's type has been changed from HorizontalAlignment into EditSettingsHorizontalAlignment. BC6: The types of some event handlers have been changed. The BaseEdit.EditValueChanged event handler's type has been changed to DependencyPropertyChangedEventHandler.
The GridViewBase.CellValueChanging event handler's type has been changed to CellValueChangedEventHandler.
The GridViewBase.CellValueChanged event handler's type has been changed to CellValueChangedEventHandle.
DXNavBar for WPF
BC420: ExplorerBar - A group doesn't become active after a click within its area To make it active, it is necessary to either click a group's header, or click an item within this group.
eXpress Persistent Objects
BC363: The current InMemoryDataStore class has been renamed to DataSetDataStore. A new class with the same older name has been created (not using DataSet).
If you do not actually need a DataSet within your data store, please consider using the new InMemoryDataStore class, otherwise please use DataSetDataStore instead.
Note: the serialization format for the new data store is compatible with DataSet. BC429: VistaDB provider has been updated to v4. VistaDB provider has been updated from version 3 to version 4 in XPO v2009 vol 3. You should replace the VistaDB.NET20 assembly in your project with the VistaDB.4 assembly. Finally, rebuild and test your project.
If you want to continue using VistaDB 3, you should manually rebuild the DevExpress.Xpo.v9.3.Providers assembly from source code.
eXpressApp Framework
BC418: A New User cannot be saved if there isn't at least one role assigned to him BC417: A Role cannot be deleted if there are users that reference it BC39: ActionBase.SelectionDependencyType - The activity of Actions now depends on the currently selected objects The focused object isn't considered anymore. BC31: Audit - The ObjectAuditProcessor class has been marked abstract. The previous ObjectAuditProcessor's logic has been moved to the FullObjectAuditProcessor class. BC34: ConditionalEditorState - The EditorStateInfoCustomizingEventArgs.EditorStateInfo and EditorStateInfoCustomizedEventArgs.EditorStateInfo properties have been removed. Use the Info property instead. BC51: ConditionalEditorState - The EditorStateRuleManager.CalculateEditorStateInfo method has been removed. Use the EditorStateRuleManager.CalculateEditorState method instead. BC53: ConditionalEditorState - The ISupportEditorStateAccessibilityCustomization and ISupportEditorStateVisibilityCustomization interfaces have been removed. BC41: ConditionalEditorState - The ISupportEditorStateCustomizationListView.DisableColumn method has been removed. Use the ISupportEditorStateCustomization.ShouldCustomizeEditor method instead. BC44: Controllers - Several obsolete controllers have been removed. Removed Controllers:
OpenObjectFromEditorController - use the OpenObjectController instead,
GridObjectNavigationController - use the OpenObjectController instead. BC29: Controllers - The ActionsCriteriaViewController's behavior has been changed. An Action's state is now updated even when the Action is inactive. BC55: GridListEditor - The "Average" function's caption has been changed to "AVG" in summary items in accordance with default XtraGrid settings. To change the "AVG=" text, use the technique described in the http://www.devexpress.com/Help/?document=expressapp/devexpressexpressappxafapplication_resourcesexportedtomodeltopic.htm document. BC47: ListEditor.SelectionType - A new enumeration value has been introduced in the Selection Type enumeration. A new 'TemporarySelection' value has been introduced in the SelectionType enumeration. This enumeration value represents an ASP.NET Web editor's selection type which is active only while a postback is processed. For instance, it can be active when an record displayed by an ASP.NET Web List editor is clicked.
If you have implemented a custom ASP.NET Web List Editor you may need to update it, if it supports this selection type. First, change the List Editor's SelectionType from None to TemporarySelection. Second, make sure that after a user clicks a record in the List Editor the ListEditor.GetSelectedObjects method returns the clicked object. Third, make sure that after a user clicks a record in the List Editor the SelectionChanged event is triggered. BC462: NavigationVisibility - The set of the attribute's possible values was changed. If you used the NavigationVisibility attribute of the Application Model's Templates node in your applications, replace the 'True' values with 'Visible' and the 'False' values with 'Hidden'. Alternatively, remove the attribute's declarations from the applications' XAFML files. BC4: PropertyCollectionSource - The default behavior has been changed. The PropertyCollectionSource now has two modes of operation – Normal and Proxy.
In Normal mode, when filtering is applied to the collection property that a PropertyCollectionSource represents, the corresponding criteria is directly applied to the underlying collection. So, in this mode, when you filter objects at the UI level, the objects are actually filtered at the data level.
In Proxy mode, the criteria are not directly applied to the detail object collection, instead they are applied to an intermediate proxy collection. So, in this mode, the underlying collection is unaffected.
By default, Property Collection Sources created by List Property Editors now operate in Proxy mode. To change this behavior, set the static PropertyCollectionSource.DefaultCollectionMode field to PropertyCollectionSourceCollectionMode.Normal.
If you need to change this behavior in respect to a particular collection property, apply the CollectionMode attribute to the property. If the source code of the property is not available, the attribute can be added in the following manner:
[C#]
public override void CustomizeTypesInfo(ITypesInfo typesInfo) { base.CustomizeTypesInfo(typesInfo); XafTypesInfo.Instance.FindTypeInfo(typeof(Person)).FindMember("Phones").AddAttribute( new CollectionModeAttribute(PropertyCollectionSourceCollectionMode.Normal)); }
[VB.NET]
Public Overrides Sub CustomizeTypesInfo(ByVal typesInfo As ITypesInfo) MyBase.CustomizeTypesInfo(typesInfo) XafTypesInfo.Instance.FindTypeInfo(GetType(Person)).FindMember("Phones").AddAttribute( _ New CollectionModeAttribute(PropertyCollectionSourceCollectionMode.Normal)) End Sub
BC49: ProxiedPropertyCollectionSource - This class has been marked obsolete. Use the PropertyCollectionSource with the CollectionMode property set to PropertyCollectionSourceCollectionMode.Proxy instead. BC43: Refactoring - The signatures of certain members have been changed. 1. DevExpress.ExpressApp.Editors.ListEditor:
public IList DataSource -> public Object DataSource
2. DevExpress.ExpressApp.TreeListEditors.Win.CategorizedListEditorDataSource:
public CategorizedListEditorDataSource(IList dataSource, Type objectType) - > public CategorizedListEditorDataSource(Object dataSource, Type objectType)
3. DevExpress.ExpressApp.SystemModule.ShowNavigationItemController:
public const string DefaultParentImageNodeName -> public const string DefaultParentImageAttributeName
public const string DefaultLeafImageNadeName -> public const string DefaultLeafImageAttributeName BC45: ShowViewStrategyBase - The ShowViewCore method should no longer be overridden. Instead of overriding the ShowViewCore method override the following new methods:
ShowViewInModalWindow,
ShowViewInNewWindow,
ShowViewInCurrentWindow,
ShowViewFromCommonView,
ShowViewFromNestedView,
ShowViewFromLookupView. BC37: Templates.Web - The Tools Action Container's default style has been changed to 'links'. BC423: The SecuritySystem.UserType property can no longer be accessed from the CustomizeTypesInfo and UpdateModel methods Instead, access the Application property of the Module class and use its Security property to obtain the current UserType:
[C#]
Type userType = Application.Security.UserType;
[VB.NET]
Dim userType As Type = Application.Security.UserType
BC48: TypesInfo - The IMemberInfo.GetMemberInstance method has been removed. Use the IMemberInfo.GetValue method instead. BC54: Validation - The obsolete DevExpress.ExpressApp.Validation.DiagnosticViews.ContextInfo class has been removed.
XtraCharts Suite
BC19: Some elements of the page tab enumerations have been marked as obsolete. SeriesViewPageTab.RadarPointGeneral
SeriesViewPageTab.PolarPointGeneral
SeriesViewPageTab.RadarAreaGeneral
SeriesViewPageTab.PolarAreaGeneral
SeriesViewPageTab.Funnel3DAppearance
SeriesViewPageTab.Spline3DMarker
SeriesViewPageTab.SplineArea3DMarker
SeriesViewPageTab.StackedSplineArea3DMarker
SeriesViewPageTab.FullStackedSplineArea3DMarker
SeriesLabelsPageTab.Spline3DShadow
SeriesLabelsPageTab.SplineArea3DShadow
SeriesLabelsPageTab.StackedSplineArea3DLine
SeriesLabelsPageTab.StackedSplineArea3DShadow
SeriesLabelsPageTab.FullStackedSplineArea3DLine
SeriesLabelsPageTab.FullStackedSplineArea3DShadow BC354: The Border options of the series labels have been moved from the Appearance to the new Border tab page. BC8: The Border options of the series view have been moved from the Appearance to the new Border tab page. BC15: The Color options of the series view have been moved from the General to the Appearance tab page. BC350: The DevExpress.XtraCharts.Native.ITransparableView interface has been renamed to DevExpress.XtraCharts.ISupportTransparency. The undocumented interface has been renamed and moved to the public namespace. BC16: The GridLinesXBase and GridLinesYBase classes have been marked as obsolete. BC14: The obsolete ASPxClientAxis.Title property has been deleted. BC9: The obsolete OverlappingOptionsBase, OverlappingOptions, PointOverlappingOptions and BubbleOverlappingOptions classes have been deleted. BC356: The obsolete SeriesLabel.OverlappingOptions and SeriesLabel.OverlappingOptionsTypeName properties have been deleted. BC414: The obsolete SeriesLabel.OverlappingOptionsTypeName property has been removed from ASP.NET serialization. You simply need to remove this property from the serialization code. BC352: The obsolete SeriesPointCollection.IsCompatible() method has been deleted. BC349: The obsolete SimpleSeriesLabel and ConnectorSeriesLabel classes have been deleted. BC2: The obsolete Tickmarks.MinorCount property has been deleted. BC242: The obsolete XYDiagram.BackColor property has been deleted. BC355: The obsolete XYDiagram.BackImage property has been deleted. BC13: The obsolete XYDiagram.BorderColor property has been deleted. BC359: The obsolete XYDiagram.BorderVisible property has been deleted. BC12: The obsolete XYDiagram.FillStyle property has been deleted. BC1: The obsolete XYDiagram.Padding property has been deleted. BC21: The obsolete XYDiagram.ScrollBarOptions property has been deleted. BC5: The obsolete XYDiagram.Shadow property has been deleted. BC358: The predefined name of the primary X-axis has been changed from "PrimaryAxisX" to "Primary AxisX". BC22: The predefined name of the primary Y-axis has been changed from "PrimaryAxisY" to "Primary AxisY". BC408: The prefix for the predefined name for a newly created constant line has been changed from "ConstantLine" to "Constant Line ". BC410: The prefix for the predefined name for a newly created custom axis label has been changed from "Label" to "Label ". BC411: The prefix for the predefined name for a newly created scale break has been changed from "ScaleBreak" to "Scale Break ". BC412: The prefix for the predefined name for a newly created secondary X-axis has been changed from "secondaryAxisX" to "Secondary AxisX ". BC413: The prefix for the predefined name for a newly created secondary Y-axis has been changed from "secondaryAxisY" to "Secondary AxisY ". BC409: The prefix for the predefined name for a newly created strip has been changed from "Strip" to "Strip ". BC351: The public interface of the SecondaryAxisCollection class has been changed. The SecondaryAxisCollection.Item property has been marked as obsolete. The SecondaryAxisXCollection.Item or SecondaryAxisYCollection.Item property should be used instead.
The SecondaryAxisCollection.AddRange method has been marked as obsolete. The SecondaryAxisXCollection.AddRange or SecondaryAxisYCollection.AddRange method should be used instead.
The SecondaryAxisCollection.Remove method has been marked as obsolete. The SecondaryAxisXCollection.Remove or SecondaryAxisYCollection.Remove method should be used instead.
The SecondaryAxisCollection.Contains method has been marked as obsolete. The SecondaryAxisXCollection.Contains or SecondaryAxisYCollection.Contains method should be used instead.
The SecondaryAxisCollection.GetAxisByName method has been marked as obsolete. The SecondaryAxisXCollection.GetAxisByName or SecondaryAxisYCollection.GetAxisByName method should be used instead.
XtraPivotGrid Suite
BC403: The conditions that raise the PivotDrillDownDataSource class' ListChanged event have been changed. Instances of the PivotDrillDownDataSource class don't raise ListChanged events any more except for the situation when the PivotGrid data source is changed. When the PivotGrid data source is changed, the ListChanged is raised twice: the first time the ListChangedType has the ListChangedType.PropertyDescriptorChanged value, and the second time the ListChangedType has the ListChangedType.Reset value. BC402: The PivotGrid.OptionsView.ShowGrandTotalHeaderIfNoColumnFields and PivotGrid.OptionsView.ShowGrandTotalHeaderIfNoRowFields properties have been removed. The PivotGrid.OptionsView.ShowGrandTotalHeaderIfNoColumnFields and PivotGrid.OptionsView.ShowGrandTotalHeaderIfNoRowFields properties have been replaced by more common PivotGrid.OptionsView.ShowColumnGrandTotalHeader and PivotGrid.OptionsView.ShowRowGrandTotalHeader properties, correspondingly.
XtraPrinting Library
BC360: Some obsolete members have been removed. - The XlsExportOptionsBase.UseNativeFormat property has been removed. The TextExportMode property should be used instead.
- The XlsExportOptions(bool useNativeFormat) constructor has been removed. The XlsExportOptions(TextExportMode textExportMode) constructor should be used instead.
- The XlsExportOptions(bool useNativeFormat, bool showGridLines) constructor has been removed. The XlsExportOptions(TextExportMode textExportMode, bool showGridLines) constructor should be used instead.
- The XlsExportOptions(bool useNativeFormat, bool showGridLines, bool exportHyperlinks) constructor has been removed. The XlsExportOptions(TextExportMode textExportMode, bool showGridLines, bool exportHyperlinks) constructor should be used instead.
- The XlsExportOptions(bool useNativeFormat, bool showGridLines, bool exportHyperlinks, bool suppress256ColumnsWarning, bool suppress65536RowsWarning) constructor has been removed. The XlsExportOptions(TextExportMode textExportMode, bool showGridLines, bool exportHyperlinks, bool suppress256ColumnsWarning, bool suppress65536RowsWarning) constructor should be used instead.
- The XlsExportOptions.Ignore256ColumnsLimit property has been removed. The Suppress256ColumnsWarning property should be used instead.
- The XlsExportOptions.Ignore65536RowsLimit property has been removed. The Suppress65536RowsWarning property should be used instead.
XtraReports Suite
BC241: End-User Designer - The Toolbox is now represented by a bar, instead of the navigation bar inside a dock panel as previously In the XRDesignFormEx form, the Toolbox Panel is now hidden. Instead, you can use the Toolbox Bar through DesignBarManager. Or, if required, you can manually show theToolbox Panel and hide the Toolbox Bar.
To show the Toolbar Panel:
designerForm.SetWindowVisibility(DesignDockPanelType.ToolBox, true)
To hide the Toolbox Bar:
designer.DesignBarManager.Bars["Toolbox"].Visible = false
(It can be found using the "Toolbox" name)
Finally, to add the Toolbox Bar to your custom Report Designer form, place the XRDesignBarManager component onto the form and call the XRDesignBarManager.Initialize method.
|