diff --git a/Editing-Improvements-in-v4.0.0.md b/Editing-Improvements-in-v4.0.0.md new file mode 100644 index 0000000..4d233d6 --- /dev/null +++ b/Editing-Improvements-in-v4.0.0.md @@ -0,0 +1,126 @@ +## v4.0.0 + +_Released June 26, 2020._ + +**46 bug fixes and improvements** + +* Starting at v4.0.0, the Extended WPF Toolkit is provided under the Xceed Community License agreement(for non-commercial use). +* In AdditionConverter, using an Int32 now correctly converts to a double before doing the addition. +* In AvalonDock, auto-hiding a LayoutAnchorable now auto-hides it on the closest side. +* In AvalonDock, Chinese localization texts have been reviewed to use simplified texts. +* In AvalonDock, clicking in a LayoutDocument/LayoutAnchorable of a DockingManager located inside another DockingManager no longer mixes the ActiveContent of DockingManagers. +* In AvalonDock, closing a LayoutAnchorable no longer prevents from showing hidden LayoutAnchorables. +* In AvalonDock, deserializing a DockingManager containing floatingWindows now correctly displays the floatingWindow's position and size. +* In AvalonDock, deserializing a LayoutRoot now reads the end element. +* In AvalonDock, docking a floatingWindow now keeps the focus on the DockingManager when other windows are opened. +* In AvalonDock, dragging a LayoutAnchorable with its CanFloat property set to false no longer makes the pane disappear. +* In AvalonDock, floating a LayoutAnchorable initially defined in a LayoutDocumentPane now correctly displays the "X" button when its CanClose property is true. +* In AvalonDock, floating a new horizontal/vertical tab group now creates a floating window with a normal size. +* In AvalonDock, hiding LayoutAnchorables from a LayoutAnchorGroup, and showing them back after the LayoutAnchorGroup is gone, no longer raises an exception. +* In AvalonDock, hitting Ctrl + Tab from floating windows now opens the NavigatorWindow even when the content does not have the focus. +* In AvalonDock, making a LayoutDocument/LayoutAnchorable active by clicking in its content now works in all cases. +* In AvalonDock, minimizing a floating window with the SystemCommands.MinimizeWindow method now minimizes the floating window. +* In AvalonDock, moving a floatingWindow containing LayoutAnchorable(s) with the CanDockAsTabbedDocument property set to false, no longer creates a drop area over a LayoutDocumentPane. +* In AvalonDock, panes with a star DockWidth/DockHeight no longer starts with the DockMinWidth/DockMinHeight values. +* In AvalonDock, right-clicking on the sides of the LayoutAnchorableTabItems or LayoutDocumentTabItems now opens the contextMenu. +* In AvalonDock, setting the LayoutDocument.IsActive property to true before insertion no longer throws a null reference exception. +* In AvalonDock, the DockingManager.LayoutItemContainerStyle property can now be used to create a style which redefines the LayoutItem commands. +* In AvalonDock, the LayoutContent.CanClose property is now always serialized. +* In AvalonDock, the LayoutContent.PreviousContainer and LayoutContent.PreviousContainerId properties now offer a public getter. +* In AvalonDock, using Alt + F4 to close/hide a LayoutAnchorableFloatingWindow/LayoutDocumentFloatingWindow no longer closes/hides a window when CanClose/CanHide is false. +* In AvalonDock, using serialization along with the DockingManager.DocumentsSource or AnchorablesSource properties now correctly restores the layout upon deserializing. +* In AvalonDock, using the drag splitter for a LayoutDocument/LayoutAnchorable in 'star' mode, in order to resize it, now results in a valid resized pane. +* In AvalonDock, using the left/right arrows on LayoutAnchorableTabItems/LayoutDocumentTabItems now cycles from first to last and vice versa. Also, using shift + F10 on LayoutAnchorableTabItems/LayoutDocumentTabItems now opens the contextMenu. +* In AvalonDock, using the NavigatorWindow to select a LayoutItem now sets the focus inside the selected LayoutItem. +* In AvalonDock, when the MainWindow containing a DockingManager regains the focus, the last LayoutAnchorableControl/LayoutDocumentControl focused no longer gets activated when the click is outside the DockingManager. +* In BusyIndicator, InvalidCastExceptions are no longer thrown when the values received are unset. +* In CheckListBox/CheckComboBox, using the SelectAll method with more than 200 items is now faster when selecting all items. +* In CheckComboBox, modifying the value of a SelectedMemberPath now modifies the value only when needed, this improves the performance when the CheckComboBox contains hundreds of items. +* In CheckComboBox and CheckListBox, when a SelectedMemberPath is used, the SelectedMemberPath value will be updated in the ItemSelectionChanged callback. +* In CollectionControlDialog, opening an object containing a sub-object of type ControlTemplate no longer raises an exception. +* In CollectionControlDialog, using an indexed property no longer throws an ArgumentOutOfRange exception. +* In ColorPicker, the new DropDownBorderThickness and DropDownBorderBrush properties are now available to customize the DropDown popup borders. +* In DateTimePicker, using a mouse double-click on a CalendarDayButton now closes the calendar popup. +* In DateTimePicker, setting the Maximum/Minimum properties near the Maximum/Minimum supported values no longer throws an exception. +* In NumericUpDowns, when UpdateValueOnEnterKey is true and the TextBox is empty, using the up/down buttons no longer throws an InvalidOperationException. +* In PropertyGrid, all the editors can now have their visual properties overridden in a custom style. +* In PropertyGrid, using the ComboBoxEditor with nullable values now displays a 'Null' option in the ComboBox. +* In PropertyGrid, attributes with UsageAttribute.AllowMultiple set to true will now override the TypeId to ensure uniqueness. +* In RichTextBox, when a new character is typed, the Text property is now updated before raising the TextChanged event. +* In SplitButton, the new DropDownTooltip property is now available to set a tooltip for the DropDownButton of the SplitButton. +* In TimeSpanUpDown, when UpdateValueOnEnterKey is true and the content is empty, using the up/down buttons no longer throws an Null Reference exception. +* In WatermarkPasswordBox, using the 'Enter' key no longer steals the focus. + +## v4.0.0 Plus Edition + +_Released to registered users of the Plus Edition on January 30, 2020._ + +**63 improvements and bug fixes** + +* All controls from the Toolkit are now available for the .NET Core 3 platform. +* In AdditionConverter, using an Int32 now correctly converts to a double before doing the addition. +* In AvalonDock, auto-hiding a LayoutAnchorable now auto-hides it on the closest side. +* In AvalonDock, caching TabItems and changing the selected tabItem no longer raises the Loaded/Unloaded event for the TabItems content items. +* In AvalonDock, Chinese localization texts have been reviewed to use simplified texts. +* In AvalonDock, clicking in a LayoutDocument/LayoutAnchorable of a DockingManager located inside another DockingManager no longer mixes the ActiveContent of DockingManagers. +* In AvalonDock, closing a LayoutAnchorable no longer prevents from showing hidden LayoutAnchorables. +* In AvalonDock, deserializing a DockingManager containing floatingWindows now correctly displays the floatingWindow's position and size. +* In AvalonDock, deserializing a LayoutRoot now reads the end element. +* In AvalonDock, docking a floatingWindow now keeps the focus on the DockingManager when other windows are opened. +* In AvalonDock, dragging a LayoutAnchorable with its CanFloat property set to false no longer makes the pane disappear. +* In AvalonDock, floating a LayoutAnchorable initially defined in a LayoutDocumentPane now correctly displays the "X" button when its CanClose property is true. +* In AvalonDock, floating a new horizontal/vertical tab group now creates a floating window with a normal size. +* In AvalonDock, hiding LayoutAnchorables from a LayoutAnchorGroup, and showing them back after the LayoutAnchorGroup is gone, no longer raises an exception. +* In AvalonDock, hitting Ctrl + Tab from floating windows now opens the NavigatorWindow even when the content does not have the focus. +* In AvalonDock, making a LayoutDocument/LayoutAnchorable active by clicking in its content now works in all cases. +* In AvalonDock, minimizing a floating window with the SystemCommands.MinimizeWindow method now minimizes the floating window. +* In AvalonDock, moving a floatingWindow containing LayoutAnchorable(s) with the CanDockAsTabbedDocument property set to false, no longer creates a drop area over a LayoutDocumentPane. +* In AvalonDock, panes with a star DockWidth/DockHeight no longer starts with the DockMinWidth/DockMinHeight values. +* In AvalonDock, poping a MaterialToast inside a floatingWindow now displays the MaterialToast correctly. +* In AvalonDock, right-clicking on the sides of the LayoutAnchorableTabItems or LayoutDocumentTabItems now opens the contextMenu. +* In AvalonDock, setting the LayoutDocument.IsActive property to true before insertion no longer throws a null reference exception. +* In AvalonDock, the CanTogglePin property is now available on the LayoutItem object, to be able to set it in a style targeting a LayoutItem. +* In AvalonDock, the DockingManager.LayoutItemContainerStyle property can now be used to create a style which redefines the LayoutItem commands. +* In AvalonDock, the LayoutContent.CanClose property is now always serialized. +* In AvalonDock, the LayoutContent.PreviousContainer and LayoutContent.PreviousContainerId properties now offer a public getter. +* In AvalonDock, the new CacheAnchorableTabItems property from DockingManager now prevents the LayoutAnchorablePaneControls from reloading the TabItems each time they get selected. +* In AvalonDock, using Alt + F4 to close/hide a LayoutAnchorableFloatingWindow/LayoutDocumentFloatingWindow no longer closes/hides a window when CanClose/CanHide is false. +* In AvalonDock, using serialization along with the DockingManager.DocumentsSource or AnchorablesSource properties now correctly restores the layout upon deserializing. +* In AvalonDock, using the drag splitter for a LayoutDocument/LayoutAnchorable in 'star' mode, in order to resize it, now results in a valid resized pane. +* In AvalonDock, using the left/right arrows on LayoutAnchorableTabItems/LayoutDocumentTabItems now cycles from first to last and vice versa. Also, using shift + F10 on LayoutAnchorableTabItems/LayoutDocumentTabItems now opens the contextMenu. +* In AvalonDock, using the NavigatorWindow to select a LayoutItem now sets the focus inside the selected LayoutItem. +* In AvalonDock, when the MainWindow containing a DockingManager regains the focus, the last LayoutAnchorableControl/LayoutDocumentControl focused no longer gets activated when the click is outside the DockingManager. +* In AvalonDock Themes, when the CacheTabItems property is set to true, selecting an already visited TabItem now prevents a reload of the TabItem's content. +* In AvalonDock and WatermarkTextBox, the UI Automation properties Name, AutomationId and HelpText now work for LayoutAnchorables, LayoutDocuments and WatermarkTextBox. +* In BusyIndicator, InvalidCastExceptions are no longer thrown when the values received are unset. +* In Chart, setting the CustomRangeStart/CustomRangeEnd properties on an axis now displays the chart in full size showing only the DataPoints included in the defined custom range. +* In Chart, the Axis.Range.Start and Axis.Range.End properties are now get only properties to prevent confusion with the Axis.CustomRangeStart and Axis.CustomRangeEnd properties. +* In CheckListBox/CheckComboBox, using the SelectAll method with more than 200 items is now faster when selecting all items. +* In CheckComboBox, modifying the value of a SelectedMemberPath now modifies the value only when needed, this improves the performance when the CheckComboBox contains hundreds of items. +* In CheckComboBox and CheckListBox, when a SelectedMemberPath is used, the SelectedMemberPath value will be updated in the ItemSelectionChanged callback. +* In CollectionControlDialog, opening an object containing a sub-object of type ControlTemplate no longer raises an exception. +* In CollectionControlDialog, using an indexed property no longer throws an ArgumentOutOfRange exception. +* In ColorPicker, the new DropDownBorderThickness and DropDownBorderBrush properties are now available to customize the DropDown popup borders. +* In DateTimePicker, using a mouse double-click on a CalendarDayButton now closes the calendar popup. +* In DateTimePicker, setting the Maximum/Minimum properties near the Maximum/Minimum supported values no longer throws an exception. +* In ExtendedTabControl, activating the CacheTabItems property and selecting a new TabItem no longer raises an exception. +* In ExtendedTabControl, when the CacheTabItems property is set to true, changing the selected TabItem no longer raises the Loaded/Unloaded events. +* In MaterialHamburger, using a MaterialHamburgerMenu inside AvalonDock no longer blurs its content. +* In MaterialToast, hiding a toast in the middle of a stack of toasts no longer hides the preceding toast. +* In NumericUpDowns, when UpdateValueOnEnterKey is true and the TextBox is empty, using the up/down buttons no longer throws an InvalidOperationException. +* In PropertyGrid, all the editors can now have their visual properties overridden in a custom style. +* In PropertyGrid, using the ComboBoxEditor with nullable values now displays a 'Null' option in the ComboBox. +* In PropertyGrid, attributes with UsageAttribute.AllowMultiple set to true will now override the TypeId to ensure uniqueness. +* In RichTextBox, when a new character is typed, the Text property is now updated before raising the TextChanged event. +* In SplitButton, the new DropDownTooltip property is now available to set a tooltip for the DropDownButton of the SplitButton. +* In StyleableWindow, maximizing the window now uses the available workspace from the current screen. +* In StyleableWindow, setting the SizeToContent property to Width, Height or WidthAndHeight will no longer prevent a user from resizing the StyleableWindow. +* In TimeSpanUpDown, when UpdateValueOnEnterKey is true and the content is empty, using the up/down buttons no longer throws an Null Reference exception. +* In TokenizedTextBox, the new FilterType property can now be used to customize the search filter type. +* In UI Automation for WatermarkTextBox and AutoSelectTextBox, the control type now returns 'Edit' instead of 'Custom'. +* In WatermarkPasswordBox, using the 'Enter' key no longer steals the focus. + +We hope you love this release and decide to support the project by getting a license to Xceed Toolkit Plus for WPF. +-- Xceed Team + +----- \ No newline at end of file