Telerik UI for Winforms

Release History

UI for WinForms 2009.2729

July 28, 2009


  • Fixed : TextWrap bug in RadRadioButton
  • Fixed: Two-way data binding bug in RadRadioButton
  • Fixed: RadButton DoubleClick event no longer fires. Two Click events are fired instead.


  • Added: Multiple cells selection
  • Fixed: the selection of disabled cells


  • Fixed: RadComboBox inability to close popup in Microsoft Outlook and other unmanaged environments.
  • Fixed: Bug in RadComboBox which caused the ambient property (Font, ForeColor) inheritance to work incorrectly.
  • Fixed: Bug which prevented the user from closing the popup by clicking on the arrow button or the text box part of the control
  • Fixed: a null reference exception when closing the popup of the RadComboBox
  • Fixed : TextWrap bug


  • Added TransactionCommitting RadDock event - allows listeners to examine a RadDockTransaction BEFORE it is committed and optionally to cancel it and/or perform some additional processing.
  • Added TransactionCommitted RadDock event - allows listeners to get notified for a successfully committed transaction and/or perform some additional processing. For example this is right place to update a DockTabStrip’s SizeInfo.
  • Added TransactionBlockStarted RadDock event - notifies for a successful BeginTransactionBlock operation.
  • Added TransactionBlockEnded RadDock event - allows listeners to get notified for an ended transaction block. Raised when all pending transactions are committed, dock tree is defragmented and updates are resumed.
  • Added QuickNavigatorSnapshotNeeded RadDock event - allows users to provide a custom Image to be displayed as a preview in the QuickNavigator for the specified DockWindow.
  • Added Starting DragDropService event - allows listeners to get notified for a Start request of the DragDropService. May be canceled to prevent undesired drag-drop operation.
  • Added Started DragDropService event - allows listeners to perform some additional processing after the service is started.
  • Added Stopping DragDropService event - allows listeners to get notified for a Stop request and/or optionally cancel it.
  • Added Stopped DragDropService event - allows listeners to perform some additional processing after the service is stopped.
  • Added Dragging DragDropService event - allows listeners to examine a Drag pass, performed by the service upon a mouse move event, and optionally cancel the Dragging process.
  • Added PreviewDockPosition DragDropService event - allows listeners to preview the currently selected DockPosition for the currently hit drop target
  • Added PreviewDropTarget DragDropService event - allows listeners to preview and optionally modify the currently hit-tested SplitPanel instance to be used as a drop target.
  • Added PreviewHitTest DragDropService event - allows listeners to preview and optionally modify the currently generated hit-test result.
  • Added DropAnchor DragDropService property - allows users to preview the anchor found upon committing a drag-and-drop operation.
  • Added AllowedStates DragDropService property - gets or sets the AllowedDockState, which will be considered for hit-testing.
  • Added HitTestResult DragDropService property - gets the result of the hit-test operation.
  • Added AllowedDockManagerEdges DragDropService property - determines which of the four edges of the owning RadDock instance are available for drop operation.
  • Added QuickNavigatorSettings.ForceSnapshot property - determines whether the QuickNavigator will update Visible and Size properties for not yet visualized DockWindow instances so that a correct snapshot may be taken. True by default.
  • Added RadDock.DragDropMode property - DragDropService can now operate in two modes: Immediate and Preview. The Immediate mode is the default one and it means that when a drag-and-drop operation is instantiated, the dragged window will be immediately detached from its current DockTabStrip and will become floating. On the contrary, in Preview mode the DockWindow will not be detached but rather a semi-translucent rectangle will be displayed, indicating the floating position it would take if the operation is committed. The major benefit of this new mode is that the operation is completely cancelable (by pressing the Escape key or calling DragDropService.Stop(false)).
  • Drag-and-drop at Design-time: Users can now easily re-arrange their DockWindows directly on Visual Studio’s Design Surface.
  • Better MDI support: The internal MDI Controller now listens for Form.Close event and will automatically close the associated HostWindow. The RadDock.MdiChildren collection is properly updated after Close/Dispose event of an owned Form.
  • RadDock.AutoHideAnimation: Allows users to specify what (if any) animation should be applied when an auto-hidden window is to be displayed/closed.
  • RadDock.ToolWindowInsertOrder: We have implemented a feature, requested by our users, namely the order at which ToolWindow instances are inserted in their owning ToolTabStrips
  • Fresh new Command model: The RadDock component now exposes a RadDockCommandManager class, which is a flexible tool for registering and executing commands operating upon the RadDock instance. Each command may be associated with a number of RadDockShortcut instances, where each shortcut may be defined much like in Visual Studio – e.g. CTRL+M+O. Several predefined commands are available:
    • DisplayQuickNavigator - The command that triggers the QuickNavigator (DockWindow activation tool). Default shortcut is CTRL+TAB.
    • CloseActiveDocument - The command will close the currently active window. Default shortcut is CTRL+F4.
    • NextDocument - Navigates to the next DocumentWindow. Default shortcut is CTRL+F6.
    • PreviousDocument - Navigates to the previous DocumentWindow. Default shortcut is CTRL+SHIFT+F6.
  • DocumentManager: The RadDock component now exposes a helper class that manages all the documents within a RadDock instance. For a Document is considered a DockWindow instance, which DockState is TabbedDocument. This may be either a DocumentWindow or a ToolWindow, which resides within a DocumentTabStrip in the MainDocumentContainer. The helper tracks all the documents in an ordered by activation list, which allows for a behavior much like in Visual Studio. The DocumentManager has the following public API:
    • ActivateNextDocument - Puts the current active document at the back of the z-ordered list and activates the next document that is in front of the list.
    • ActivatePreviousDocument - Gets the document at the back of the z-ordered list, puts it in front and activates it.
    • DocumentArray - Gets an array with all the documents, available in the owning RadDock, in the way they appear in their parent strips (unsorted).
    • DocumentArrayZOrdered - Gets an array with all the documents, available in the owning RadDock, sorted by their activation order.
    • DocumentArraySortedByText - Gets an array with all the documents, sorted by their “Text” property.
    • ActiveDocument - Tracks the currently active document. It may differ from the ActiveWindow and does not necessary have the keyboard focus. It is either the first available document or the last activated such.
    • BoldActiveDocument - Controls whether the currently active document’s TabStripItem will be bolded to visually emphasize its state.
    • DocumentInsertOrder - Defines the position at which new documents are inserted in their owning DocumentTabStrip.
    • ActiveDocumentMenuSortOrder - The ActiveDocument menu available per DocumentTabStrip instance may now be told what sort order to apply to its child menu items. By default ActiveDocumentListSortOrder.ByText is used to mimic the functionality found in Visual Studio.
  • Fixed: a general problem with keyboard navigation - RadDock is now not an IContainerControl implementation, and does not require focus. This allows the default Windows Forms keyboard navigation to work as expected.
  • Fixed: Nested RadDock instances are supported - Each RadDock control may now be nested in a DockWindow that resides within another RadDock.
  • Fixed a bug with anchored control on a DockWindow instance
  • Fixed some layout persistency problems
  • New: Extended DockControl API and MdiChildren management
  • New: Predefined Hide/Show methods of ToolWindows have been added to support RadDock functionality
  • New: Middle button click will close the clicked document window
  • New: CloseCommand (ctrl+F4) is associated with closing the currently selected document
  • New: Localization provider added
  • New: Desert theme added

RadForm, RadRibbonForm, RadColorDialog

  • Fixed: ActivateMdiChild event not fired.
  • Fixed: Activate event of MDI child forms bug fix.
  • Fixed a bug in the client area calculation when MDI child and maximized.
  • Fixed a bug when RadForm is MDI child in a standard form which prevented the default MDI menu from appearing.
  • Fixed a bug which caused anchored controls to be wrongly positioned
  • Fixed a bug in the sizing of the title bar when MaximizeBox, MinimizeBox and ControlBox are set to false
  • Fixed a bug which prevented the form from maximizing correctly under Windows XP with themes enabled.
  • Fixed a bug which prevented the form from maximizing correctly on a secondary monitor
  • Fixed a bug which caused the form to paint incorrectly when maximum size is set and the form is maximized.
  • Fixed a bug which caused the MDI parent’s text not to be updated when the text of a MDI child is changed
  • Fixed a bug when a standard MenuStrip is used in a RadForm which is MDIContainer and a MDI child is maximized: the MenuStrip did not show the MDI menu controls and the text of the Parent form was not updated accordingly
  • New in RadForm: The form’s system menu is shown upon click on the Title Bar’s icon or on the MDI menu’s icon
  • New in RadColorDialog: Custom colors are now stored in the local user AppData directory
  • New in RadColorDialog: The CustomColorsConfigLocationNeeded event is introduced which enables the developer to customize the location where custom colors will be stored.
  • Breaking Change: The CompositeFilterForm has been upgraded to use the RadForm control (rather than ShapedForm), which might imply updates of custom themes used to style the old version of the form.


  • Fixed: RadGridView checkbox can be edited when the grid is read only
  • Fixed: Textbox editor not showing when its Multiline property is set to true
  • Fixed: Right click on group header row causes a crash
  • Fixed: CellFormatting fires for "add new row" and filter cells
  • Fixed: MinHeight for grid rows doesn't work when AutoSizeRows is set to true
  • Fixed: Setting FormatString to a datetimecolumn doesn't affect the filtering row.
  • Fixed: Filtering set at design time is not visible at run time
  • Fixed: Setting the EnableGrouping property at design time causes a crash
  • Fixed: It is not possible to get the raw summary value through the APIFixed: Clicking on the checkbox when the row is half visible causes the checkbox to appear checked but the ValueChanged event will not fire.
  • Fixed: RadMultiColumnComboBox control crashes when changing its text
  • Fixed: It is not possible to get the DataRowInfo for a new row when handling the RowValidating event
  • Fixed: adding new row into empty grid bound to simple List<> data object, add row from API, delete row, add row
  • Fixed: custom filtering operation
  • Fixed: hierarchy keys building for some scenarios
  • Fixed: issues with auto generate columns
  • Fixed: aggregate calculation with null values
  • Fixed: a bug with applying text alignment from conditional formatting to matched cells.
  • Added: new ConditionalFormattingObject.RowTextAlignment property to define what text alignment to apply to child cells when ConditionalFormattingObject.ApplyToRow is true.


  • Fixed: Header size is pixel-accurate when GroupBoxStyle is set to Office2003 style
  • Fixed: Compatibility fix with RadDock


  • Fixed: Several menu merge bugs


  • Fixed: Bug in the ControlDefault theme which caused the selected state of an item to be lost on scrolling.
  • Fixed: Bug in the Vista theme which caused the selected state of an item to be lost on scrolling.


  • Added Desert theme


  • Fixed: Saving resource associations in the data source has been changed to make RadScheduler work better with data sources that have foreign key constraints (like for example a DataSet)
  • Fixed: The data binding example has been improved so that it handles saving changes in the data set in the recommended way
  • Fixed: All day checkbox in edit dialog is now checked when the edit dialog is opened and the Appointment is all day appointment.
  • Fixed: Mouse events for all day appointments.
  • Fixed: Forward and Previous appointment navigators are now shown when necessary.
  • Fixed: Delete appointments pressing ‘Del’ key in MultiDayView and MonthView
  • Fixed: Cells selection and context menu initialization in MultiDayView, DayView, WeekView and WorkWeekView
  • Fixed: Add new appointment using the context menu in MultiDayView
  • Fixed: Add one hour appointment in MultiDayView
  • Fixed: Changing ActiveViewType dynamically
  • Fixed: Start and End Time validation in edit dialog
  • Fixed: Scroll Up and Scroll Down behavior in DayView, WeekView, WorkWeekView and MultiDayView
  • Fixed: DoubleClick in MultiDayView opens the edit dialog. 
  • Fixed: Recurrent appointment’s exception is not shown correctly when navigating in DayView
  • Added: It is now possible to use words instead of numbers in appointment title format string, for example:
    SchedulerDayView dayView = new SchedulerDayView();
    dayView.AppointmentTitleFormat = "{start:HH:mm} - {end:HH:mm} {summary} ({location})";
  • Added: It is possible, as shown in the code snippet above, to set the format of start and end time
  • Breaking Change: The static property AppointmentElement.DefaultTitleFormat has been removed because the default appointment title format depends on the currently set culture. To get the default appointment title format string the following code can be used:
    AppointmentElement.AppointmentTitleFormatter titleFormatter = new AppointmentElement.AppointmentTitleFormatter();


  • Fixed: A problem at design-time with anchored controls within a tabstrip page.


  • Fixed the ForeColor property


  • Fixed: Bug in RadTreeView's data binding logic which caused child items to not be displayed if they are exposed as an IList reference.
  • Fixed: Loading images when the ImageList is set after nodes’ image properties.
  • Fixed: Node editing using the context menu
  • Fixed: Occasional RadTreeView crash when accessing the RelationBindings property without a DataSource being set.
  • Breaking change: RadTreeView now accepts instances of type RadContextMenu for its ContextMenu property only. The RadTreeView.RadContextMenu property has been hidden from the property grid in design-time in order to avoid ambiguity with RadContextMenuManager. It has been marked obsolete and will be removed in the next major release.


  • Fixed an occasional design-time null reference exception caused by RadControl's ActionListGlyph.


  • Fixed incorrect hit testing in PopupManager.

New features & Roadmap

Have a feature request?

Post your feedback via the WinForms UserVoice portal or the Public forums

What's new across all Telerik products?

See all updates

Get Started Waves

Next Steps

Online help

Access our online documentation.

Compare pricing

Check out the offers. Purchase an individual suite or treat yourself to one of our bundles.

Download 30-day free trial

Try UI for WinForms with dedicated technical support.