Release History


UI for Silverlight 2011.1315

March 15, 2011

Q1 2011

New Controls:



The ScheduleView empowers end users with unprecedented control over precision and flexibility when handling their appointments. This is achieved through features such as multi-level grouping, powerful zoom for smart navigation through a large number of appointments and blazing fast scrolling.


RadTimeBar Beta

With RadTimeBar, your end-user can easily scroll and navigate through a large time period as well as select a certain date range. RadTimeBar is blazing fast even when working with a large set of data, providing smooth experience when zooming, scrolling or drilling the data. Use it independently, or combined with SparkLines to create rich data visualization.



RadDataForm control will provide UI for displaying and editing properties of an object in a form layout. It will include collection navigation capabilities, basic data validation and will also respect key DataAnnotation attributes. As all other controls it will be compliant with the "lookless" concept and provide slick and highly customizable UI.



RadExpressionEditor provides end users the ability to write and edit complex formula expressions as a free form text. At the same time the new control gives the developers access to the structured data (in the form of a LINQ expression) about the entered expression. The primary use case for this component is integration within RadGridView and its LINQ based data engine, which allows unlimited runtime data shaping customizations.



RadSpellChecker can check the spelling of various input controls. It can be even adapted to work with your custom controls and use custom dictionaries. You can integrate it to work over the RadGridView cells.



RadMaskedInput controls are designed for masking (controlling correct input) and formatting (displaying) culture specific values like numbers, currency, dates and text. The controls support data validation and provide great control over the input behavior, navigation, masked text (when in edit mode), display text (when not in edit mode).




Backwards Compatibility:

  • When horizontal virtualization is turned on the GridViewCellsPanel’s Children collection does not have the realized cells in correct order. Use RadRowItem.Cells collection instead.

What’s New:

  • Introduced GridViewDataControl .CellLoaded and GridViewDataControl .CellUnloaded routed events with direct routed strategy.
  • Added: Navigation commands for Home, End, PageDown and PageUp keys (MoveFirst, MoveHome, MoveLast, MoveEnd, MovePageDown, MovePageUp, MoveTop, MoveBottom.
  • Select/Unselect methods added for RadGridView. These methods should be used instead SelectedItems.Add/SelectedItems.Remove in order to have maximum selection performance.
  • Names for cell automation peers are now based on the item name and column index.
  • Optimized performance of the grid: wise dependency property setting, direct strategy for cellloaded/unloaded
  • Split BindingToExpressionExtensions into BindingToExpressionHelper and BindingToExpressionExtensions.
  • Added: GetValueForItem() method for GridViewExpressionColumn.
  • Added: GetValueForItem() method for GridViewBoundColumnBase.
  • Modified GridViewDataControl.FindExistingSortDescriptor to use the EffectiveSortMemberPath property of GridViewColumn, instead of IDataFieldDescription.GetDataMemberName().
  • Added: GroupRowIsExpandedChanging and GroupRowIsExpandedChangedevent for GridViewDataControl.
  • Added: Deferred horizontal scrolling.

What’s Fixed:

  • ReorderColumnsMode default value is changed to None.
  • CellLoaded and CellUnloaded routed strategy is changed to Direct.
  • ScrollIndicator now will show correct values when the grid is grouped.
  • Automatically generated hierarchy now will generate RadGridView with MaxHeight="300" instead GridViewDataControl.
  • Fixed: FooterTextAlignment not applied correctly on GridViewGroupFooterCell.
  • Fixed: Null reference when trying to copy disjoint cell regions.
  • Fixed: Exception is thrown when navigation keys are used (Up, Down, etc) and RadGridView has no columns.
  • Fixed: StackOverFlow when read only cell is selected and Validation fails.
  • Fixed: Invalid editing event order when CellEditTemplate is used.
  • Fixed: Problems with grouping when reusing containers on reset.
  • Fixed: Horizontal scrolling to the beginning of the row on vertical scroll via keyboard.
  • Fixed: Memory leak in scrollviewer.
  • Fixed: ScrollIntoViewAsync does not always work correctly when the row height is variable and virtualization is turned on.
  • Fixing issue with ExpressionColumn not correctly initializing its func delegate when base type is used as a parameter of the expression.
  • Fixing issue with member access function creation with covariant argument.
  • Fixed: Issue where GridViewExpressionColumn would throw an exception if the supplied expression is a parameterless lambda.
  • Fixed: Hierarchy sometimes disappears after a cell from the parent row is edited.
  • Containers are now reused when Items collection is reset (Sorting, Filtering).
  • Fixed: Binding errors in Visual Studio output window with AutoGenerateColumns is set to False and grid bound to VirtualQueryableCollectionView.
  • Fixed: Bug in GridViewExpressionColumn, which would cause application to crash if the data item raises PropertyChanged and the column has a CellTemplate.
  • Fixed: Exception in PropertyPathDescriptor.GetPropertyOwnerValue method when too long nesting is used (A.B.C).
  • Fixed: Exception in GVCP when calling scroll to home.
  • Editing in grouped scenario refactoring (improved performance).
  • Fixed: Issue with not calling dropImpossible when leaving droppable area when drop has never been approved.
  • Fixed: Issue with RadGridView grouping when put in RadMenu.
  • Fixed: Second commit skips data validation.
  • Fixed: Issue with reorder grouppanelcells.
  • PresentationMode property now working in GridViewCheckBox when set in style.
  • Fixed: RadGridView handles Esc key even when it is not in edit mode.
  • Fixed: Exception while setting cellvisual cues, optimizing cell recycling.
  • Adaptive way to remove cells from children collection - solve problem with slow scrolling after restore window.
  • Fixed: RowDetails for the new row (InsertRow) are shown only at first time use.
  • Optimizations in setting dependency properties while generating/recycling content.
  • Fixed: GridView cannot edit null values when column is bound to a Nullable type via Dynamic object.
  • Fixed: DataLoaded event is fired twice on an initial load.
  • Fixed: Issue with cellbackground while virtualizing.
  • Optimizations in grid view on getting/setting dependency properties of the cells while preparing them.
  • Fixed: RowIsExpandedChanged events args were incorrect.
  • Fixed: Changing "DataMemberBinding" does not affect already loaded cells.
  • Fixed: Multiple sort doesn't work when RadGridView is bound to ICollectionView
  • Fixed: Issue with raising CellLoaded on Footer cells twice
  • Fixed: Wrong mask is applied in the field filter when the underlying property is of type decimal.
  • Fixed: Edit item in grouped scenario doesn't update group aggregates.
  • Fixed: GridviewSelectColumn now select items, even if SelectionUnit is cell.
  • Fixed: Commit cell edit hits underlying property setter no matter if value has been edited.
  • Fixed: ContainerFromItem did not return container for item when grid is bound to Dictionary.
  • Fixed: Sorting with pending changes and RIA fails
  • Fixed: Issue where a column's sorting state would change even if the user canceled the Sorting event.
  • Fixed: Issue where not all affected cells would be selected after pasting.
  • Fixed: Property access in GridViewBoundColumnBase now defaults to the DynamicPropertyAccess sleeve.
  • Fixed:Issue where ActivateRowCommand would cause validation to fail when parameter is KeyEventArgs.
  • Fixed: Issue where connecting lines of GridViewGroupPanelItem would be incorrect.
  • Fixed: A null ref exception occured when a user tries to group by a column with GroupMemberPath set and no DataMemberBinding set.
  • Fixed: Issue with support for CustomTypeDescriptor's PropertyDescriptor ValueChange event notification and update of cell's content.
  • Fixed: Invalid cast exception when grid is paged (moved to any next page) and then grouped.
  • Fixed: Edit item in a grouped grid when grid is bound to EntitySet.
  • Fixed: RadGridViewAutomationPeer GetItem() method does not work properly.
  • Added: A ColumnFilterDescriptor property to GridViewFilteringEventArgs and GridViewFilteredEventArgs.
  • Fixed: Grid rows not recycled properly when navigating up and down with arrow keys.
  • Fixed: ItemContainerGenerator not recreated properly when reapplying grid template.
  • Fixed: Tab key from an edited cell with failing validation (exception thrown in setter) causes 2 hits of the underlying property setter.
  • Fixed: Issue in GridViewHeaderCell-Part_SortIndicator is not visible in Ascending state.
  • Fixed: SortDescriptor is not removed (multi-sort scenario) when IQueryableCollectionView is used as RadGridView.ItemsSource.
  • Fixed: Null reference exception in OnDropDownPopupOpened.
  • UpdateValueEvent for numeric filter RadMaskedTextBox set to UpdateValueEvent.LostFocus
  • When EnableColumnVirtualization is False only arrange of GridViewCellPanels will be invalidated - not measure!
  • Fixed: ValidatesOnDataErrors property doesn't work with nested (complex) properties.
  • Fixed: Add item to grouped grid doesn't work when item implements ICustomTypeDescriptor:
  • Fixed: Element inside invisible container gains focus.
  • Fixed: Edited row container is reused for another item (results in wrong editing state for row randomly across RadGridView items).
  • Fixed: Inserting some new items in group scenario without expanding any group results in adding only one visual item.
  • Fixed: Insert, delete stop working after a cancel edit is performed (double ESC press) when RadGridView is bound to a CollectionViewSource but item doesn't implement IEditableObject).
  • Fixed: Setting CanUserSelect to false will cancel any pending drag operation.
  • Fixed: DataLoadMode.Asynchronous does not work properly on initial load
  • Fixed: Bug where GridViewExpressionColumn would throw an exception when CreateCellElement is called with a null data item.
  • Fixed: Memory leak in GridViewHeaderCell.FilteringDropDown.
  • Fixed: Auto sized columns not rendered properly on async dataload.
  • Fixed: Footer cell properties not applied correctly runtime.
  • Fixed: Cell content not reinitialized properly after Reset.
  • Fixed: Child groups are missing when grouping a column that has a Converter defined on its DataMemberBinding.
  • Fixed: GridViewDataControl scrolling is not reset when not needed
  • Fixed: Bug where connecting lines in GroupPanel would display before the first item.
  • Fixed: GridViewDynamicHyperlinkColumn and GridViewHyperlinkColumn not working properly on horizontal scroll.
  • Removed duplicate calls to IValueConverter.Convert when grouping with the new ColumnGroupDescriptor.
  • GridViewDataControl now subscribes to its DataItemCollection.CollectionChanged event, instead of the DataItemCollection.CollectionView.CollectionChanged event.
  • Fixed: A bug in GridViewHeaderCell Style (Sorting Indicator)
  • Fixed: When grid is grouped expanding any group after the first one also expands the first group.
  • Fixed: Missing scrollbar oninRadGridView for WPF with auto columns.
  • Fixed: GridView: InsertRow doesn't respect BO INotifyPropertyChanged interface.


What’s New:

  • Added support for multiple ItemsSources – it is now possible to populate the control from different data providers through the SeriesMapping.ItemsSource property.
  • Added support for handling empty (null) data points – you can control the visual presentation throught the SeriesDefinition.EmptyPointBehavior property:
    • EmptyPointBehavior.Gap (default) - Disconnects the data series, to signify the presence of empty data point.
    • EmptyPointBehavior.Drop – Does not render visible representation for the corresponding empty data point.
    • EmptyPointBehavior.Zero – Replaces the empty data point with 0 value.
  • Added RangeBar and HorizontalRangeBar 2D series types.
  • Added built-in interoperability with RadTimeBar through the RadChart.TimeBar property – once this property is set, the TimeBar selection will be used to filter the displayed data in the chart control automatically (note that this is supported for scenarios where the XValue is DateTime).
  • ChartLegend.TitleFontWeight property is now obsolete – use ChartLegend.HeaderFontWeight instead.
  • Added ChartArea.Command and ChartArea.CommandParameter properties to provide support for ItemClick commanding.
  • Added ChartHierarchyCommands.Back, Forward, and Reset commands for hierarchical data scenarios.
  • Added HierarchyManager.CurrentItemsSource property that gets the itemssource corresponding to the current hierarchy level.
  • Added ChartLegend.HeaderFontWeight property that gets or sets the font weight of the header template.
  • Added RadChart.UpdateLogicalChildren() method that can be used to sync the control state in scenarios where control with non-default layout is used and the layout is updated dynamically (add/remove ChartArea on the fly).
  • Added AxisX.ShouldScaleStepOnZoom / ShouldRoundMinValueOnZoom properties that can be used to accomplish a zooming / scrolling scenario where constant mapping between series items and axis ticks should be preserved (set ShouldScaleStepOnZoom to false and ShouldRoundMinValueOnZoom to true).
  • Added ChartArea.ItemOverlapPercent property that gets or sets the item overlap percent for overlapping bars.

What’s Changed:

  • Interactivity API now works independently from the series definition interactivity settings (i.e. you can programmatically select item from code without explicitly enabling interactivity effects for the specific series).

What’s Fixed:

  • Fixed PointMark styling -- it is now possible to customize the shape & appearance of individual point marks through MVVM.
  • Fixed a problem with additional AxisY not resizing properly when the chart is nested in a scrollviewer.
  • Fixed zoom/scroll disabled under certain conditions with multiple series.
  • Fixed empty series should not be taken into account when calculating axis range.
  • Fixed a problem with disappearing label when increasing chart size.
  • Fixed ChartTitle / ChartLegend not getting correct theme settings if non-default layout is used.
  • Fixed series and legend item visibility inconsistency - the legend items will now be collapsed when the series visibility is set to collapsed / hidden (previously they were only collapsed when the series was collapsed and visible when the series was hidden).
  • Fixed OverflowException in AxisX when IsZeroBased was set to true in specific scenarios.
  • Fixed horizontal gridlines disappearing under specific conditions.
  • Fixed chart freezing when changing XAxis to DateTime.
  • Fix a problem with Logarithmic Y axis for Range series type.
  • Fix a problem with the last axis item visibility in specific scenarios.
  • Fixed NullReferenceException with hierarchy manager in design-time.
  • SeriesDefinition change notifications (SeriesDefinition will not be cloned unless grouping is enabled, or it is set through DefaultSeriesDefinition property).
  • Layout cycle detected exception when trying to measure / arrange charts within very tight constraints (e.g. integration scenarios with RadTileView).
  • ChartTitle / ChartLegend declared in XAML not getting the instance chart theme correctly if non-default one is used.
  • User-defined styles not applied properly on all axis-related elements.
  • Memory leaks in dynamic update scenarios and in scenarios where the ChartArea template is changed.
  • Binding support for ChartArea.ZoomScrollSettingsX and ZoomScrollSettingsY.
  • Line chart not drawn correctly in specific scenario (AxisX in “strict” mode and sorting by YValue applied when the items order specified by sorting differs from the order specified by the strict mode).
  • Interactivity selected state for scatter point items.
  • Stacked100 series issue when one of the series contains negative value(s).
  • NullReferenceException with camera extension in specific 3D series scenarios.
  • NullReferenceException when ChartArea.Annotations property is set to null.
  • Unpredicted zooming in specific scenarios with context menu.
  • PlotAreaMouseEventArgs for scenarios with horizontal charts and for scenarios with logarithmic axis.
  • Axis.IsZerobased property value cannot be changed in runtime.
  • Stacked series not refreshed when a data point value changes.
  • It is now possible to declare individual MarkerShape for different legend items.
  • 3D Pie / Doughnut slices not rendered for really small YValues.
  • Minor gridlines disappearing occasionally on zoom.
  • ItemsPanelOrientation binding error shown in Output addressed.


What’s New:

  • Bookmarks support + Hyperlink refactoring.
  • Comments UI Similar to MS Word.
  • New "Annotation" document elements used to mark contextual regions in the document, such as, comments bookmarks, hyperlinks.
  • New Design Time Wizard for RadRichTextBox.
  • Localization support.
  • Multi-level lists support.
  • RadRichTextBox version for WPF.
  • RTF format provider that supports import/export of rtf documents.
  • Introduced FontManager as a source for available fonts in all UI components.
  • Added: Focus, MouseOver and Validation states.
  • Implement ICommand.CanExecute and raise CanExecuteChanged from Undo and Redo commands of RadRichTextBox.
  • Introduce RoutedCommands, that work with CommandBindings and KeyBindings.
  • Added: Table CellSpacing property.
  • Added: Height property for TableRow.
  • VerticalAlignment property in table cells.

What’s Fixed:

  • Handle errors when loading assemblies with MEF.
  • ContextMenu - Memory leak when showing.
  • ContextMenu loads its menu items more than once.
  • DocumentContentChanged event not fired on image resize.
  • DocumentElementCollection.Clear() doesn't fires the remove event of its children.
  • HighlightColorPicker occasionally throws KeyNotFoundException.
  • Import does not merge Spans leads to problems with insert text/undo.
  • Importing Word Documents containing DOCX text boxes and exporting them to HTML causes an exception or improper export to HTML.
  • InsertSymbolDialog: Current RadRichTextBox's font is not loaded initially.
  • Setting ScaleFactor to .75 in XAML doesn’t change the scale value in associated StatusBar.
  • RadRichTextBox throws IndexOutOfRangeException on Mac OS.
  • Splitting a hyperlink between two paragraphs and then undoing causes exception.
  • Text added after a hyperlink is mistakenly interpreted as part of the hyperlink.
  • Allow capital-letter extensions when inserting images.
  • Hyperlink - when having a hyperlink in the last paragraph as last inline, when saving and then loading the document the paragraph symbol is hyperlink and cannot be removed.
  • Issues with layout when RadRichTextBox is used in infinite-sized containers like stack panel, scrollviewer etc.
  • Spellchecking issues with words like "doesn't".


What’s New:

  • Added CommandExecutionTrigger property.
  • Ability to see which item is initially checked (IsUserInitiated=true) in PreviewChecked/PreviewUnchecked event when TreeView is in TriState mode.
  • Added Asynchronous BringIntoView method on the tree view.
  • Added commands for ItemClick and ItemDoubleClick events.
  • Added Double Click Event.
  • Added DragInProgress event.
  • Added ExpanderVisibility or IsExpandAllowed property of the TreeViewItem.
  • Allow expand/collapse animations with easings.
  • Added Click and Double Click events.
  • Controlling the visibility of the expander.
  • Double-click action mode.
  • ExpanderStyle Blog Article and Demo.
  • Handles "Enter" key even when nothing is done.
  • Remove "set" from IsSelectionActive documentation.

What’s Fixed:

  • Setting TreeViewDragCue ItemTemplate results in memory leak.
  • Add text search within treeview items.
  • BringIntoView is not brining the whole item with the Selection, but only the internal item itself.
  • BringItemIntoView and BringIndexIntoView methods don't bring the requested item into view if the TreeView is Virtualized and it has expanded items.
  • Cannot change theme dynamically when Header is UI element.
  • Hierarchical Virtualization crashes the application when a TreeViewItem is collapsed.
  • IsDragDropEnabled does not work correctly when bound with "false" as initial value.
  • IsSelected container binding causes a virtualized TreeView to jump while scrolling.
  • IsUserInitiated returns false when the treeitem is checked with the SpaceBar key.
  • Item stays in MouseOver state when Microsoft's BusyIndicator is started from the ContextMenu.
  • Item stays in MouseOver state when tree/item is unloaded.
  • Items not being rendered correctly when IsVirtualizing is set to True.
  • Rendering issues in "Recycling" virtualization mode.
  • TreeView does not behave correctly when inside Docking inside ScrollViewer.
  • When Item is disabled the expander button is not disabled.


What’s Fixed:

  • RadTreeListView now can delete properly child items.
  • Fixed: Increased memory consumption while continuously selecting text in texbox inside row.
  • Fixed: TreeListView rows are not released from the memory after calling reset.
  • Fixed: Setting row height under 25 px is not respected.
  • Fixed: Issue with TreeListViewDragCue and themes in External themes scenario.
  • Fixed: Null reference exception fixed in OnGroupPanelChanged - no group panel.
  • Fixed: Issue with not releasing TreeListViewRows from the memory after calling reset.
  • Fixed: Issue with TreelistView min height of rows.
  • Fixed: Drag and Drop event args in RadTreeListView contained only the first of the selected items.
  • Fixed: RadTreeListView crash when scrolled to bottom and ItemsSource changed.
  • Fixed: TreeListView - columns cannot be reordered.


What’s New:

  • Added: A property in order to switch between circle application button and rectangle button.

What’s Fixed:

  • Backstage alignment issues when the browser is zoomed.
  • Unexpected behavior of the RadRibbonDropDown button with a RadColorSelector as a DropDownContent.
  • When a RibbonGroup's Visibility is Collapsed, the GroupVariants aren't applied as expected.
  • Changing ItemsSource property is not working as expected.
  • DialogLauncherButtonStyle dependency property exception is thrown.
  • RibbonWindow repaint issue.
  • The selection logic of Tab control is wrong.
  • When a non-default theme is set, the RibbonBarGallery isn't properly displayed.
  • When hosted in windows forms ElementHost Variants are not configured correctly on load.
  • RibbonWindow: Major refactoring.
  • When ribbon bar is dynamically changed via binding it is not displayed properly and the application button cannot be clicked any more.
  • RibbonWindow is flickering while resizing.

Assembly Minifier

What’s New:

  • Styling XapMinifier.
  • Optimize XAPs.


What’s New:

  • Added PreservePositionWhenMaximized property.
  • Added PreviewTilesStateChanged event.
  • Added TilesPositionChanged event.
  • Added Virtualization for scrollable items.
  • Allow customizable tile sizes in restored state.
  • Allow restored items to have a fixed size and be wrapped in a scrollviewer.
  • Allow tiles to have fixed sizes.
  • Replacing ordered item.

What’s Fixed:

  • Dynamically theme changing causes minimized items to disappear.
  • Data binding the Content property of a TileViewItem does not work.
  • Drag and drop doesn't work properly when you use browser zoom different than 100%.
  • Dragging does not work in a floating dock pane.
  • Incorrect behavior with paging.
  • MaximizedItem strange behavior when you change the ItemsSource.
  • Fixed: Memory leak.
  • Rapidly clicking on item headers while animations are in progress causes a bug.
  • ScrollBar doesn't hide when you change the ItemsSource.
  • ScrollBar doesn't refresh its value when you hide items.
  • ScrollBar hides without setting its offset to zero and leaves some items outside the view area.
  • Slow animations cause incorrect minimized tiles positions.
  • Some TileViewItems appear blurred.
  • Strange rendering of the RadTileView on start/refresh.
  • The header foreground color is not changed when changing the Theme.
  • TilesStateChanged and TileStateChanged events don't fire when a RadTileViewItem is removed.
  • TileView doesn't work when TileState is bound and the first item is Maximized.
  • When there is a scrollbar, you scroll down and hide an item the other items don't position properly.
  • When you handle the PreviewTileStateChanged event the ToggleButton is not correct.


What’s New:

  • Added support for multiple map providers – it is now possible to specify several tile providers that will be displayed one over another through the RadMap.Providers property.
  • Added support for single image providers through the UriImageProvider class. Note that you can either specify single image for all zoom levels, or you can specify different image for every distinct zoom level. Also, note that this provider always should have its GeoBounds property set.
  • Added support for the OSGB36 and EPSG:900913 projections to the EmptyProvider.
  • Added support for built-in conversion between the following coordinate systems EPSG:4326 <-> OSGB36, and EPSG:4326 <-> EPSG:900913. It allows you to use shapefiles created for OSGB36 or EPSG:900913 (spherical Mercator with coordinates given in meters) with map providers which uses EPSG:4326 (Mercator with coordinates given as latitude and longitude) so it is possible to show such shapefiles “as is” over the BingMaps or OpenStreetMap imagery. The converter can be specified through the MapShapeReader.CoordinateConverter property (set it to OSGB36Converter or EPSG900913Converter).
  • Added option to customize the commands in the CommandBar for every map provider (see the how-to section in the documentation for more information).
  • Added option to restrict panning region for RadMap through the RadMap.GeoBounds property (see the how-to section in the documentation for more information).
  • Added option to restrict the region represented by map provider within geographical bounds through the MapProvider.GeoBounds property.
  • Added two new properties that control the geographical bounds of the information layer:
    • InformationLayer.Region – Gets or sets the geographical region covered by the layer.
    • InformationLayer.RegionMode - Gets or sets geographical region size mode. It can be “Static” or “Dynamic” (default). “Static” means that region has constant geographical location and size which are specified in the Region” property. “Dynamic” means that location and size of the region are calculated when items are added or removed to/from information layer. Note that if elements are grouped into several regions on the map then it is recommended to consider using several different information layers as well (one per region).
  • Added support for MapLayer.ZoomRange attached property for the geographically restricted map providers.
  • Added option to specify tile size different than the default 256x256 in the TiledMapSource class.
  • Added support for culture settings to the map sources. Bing map tile sources use value from the RadMap.Language property to show map using the corresponding culture. Note that Bing imagery service does not provide support for all cultures - see us/library/cc981048.aspx for the supported cultures.

What’s Changed:

  • MapProviderBase.MinZoomLevel / MaxZoomLevel properties are obsolete – use RadMap.MinZoomLevel / MaxZoomLevel properties instead.
  • RadMap.AllowedCommands property is obsolete – use the Commands property of the respective map provider and set the CommandDescription.IsAllowed property for the desired command to change its availability.
  • RadMap. ZoomBarPresetsSettings property is obsolete now -- use Command.Text property for the corresponding zoom level command in the RadMap.MapZoomBar.Commands collection.
  • Every provider has its own set of commands shown in its CommandBar now (you can access them via the Commands property of the respective provider).
  • The InformationLayer is always geographically limited now and does not cover the whole surface of the map but just a part of it In order to improve precision – since InformationLayer.RegionMode is set to “Dynamic” by default, existing solutions should continue to work without any modifications.

Custom map provider architecture is not backwards compatible with previous versions

Here is a list of all provider-related changes:

  • IMapProvider interface no longer exists.
  • MapProviderBase class exists but it should not be used as a base class for custom providers any more. All custom map providers should inherit either from TiledProvider or ImageProvider.
  • TiledProvider is a base class for map providers that show map as a sequence of tiles (e.g. BingMaps, OpenStreetMap).
  • ImageProvider is a base class for providers that show map as a single image (UriImageProvider).
  • Since all existing custom providers (prior to Q1 2011) show map as a sequence of tiles, they should be changed to inherit from the TiledProvider class. The only property which must be overridden in these custom providers is SpatialReference -- it should return the actual projection used by the provider (in all existing custom providers prior to Q1 2011 it should be MercatorProjection).

Here is a list of all map source-related changes:

  • The map provider cannot be used as a map source by itself as it was allowed before.
  • The logic which provides tiles must be moved to separate class – map source.
  • All map source classes should inherit either from TiledMapSource, or ImageMapSource classes and override methods depending on the specific map source type.
    • TiledMapSource is a base class for map sources that return map tiles (that includes all BingMaps sources: aerial, road, birds eye, and all OpensStreetMap sources: Mapnik and Osmarenderer).
    • ImageMapSource is a base class for map sources that return single map image.
  • Since all existing providers prior to Q1 2011 show map as a sequence of tiles, their new map source classes should inherit from the TiledMapSource class and meet the following requirements:
    • It should override the Initialize method.
    • It should override the GetTile method and existing custom logic should be moved here.
    • It should call RaiseInitializeCompleted method when the respective custom provider is initialized (in case of simple providers it is enough to call this method from the override Initialize method).

What’s Fixed:

  • Fixed issue with corrupted tile image throwing exception.
  • Fixed issue with using MapPath instances in the DynamicLayer in specific scenarios.
  • Fixed application freeze when the center and zoom level of map are changed a few times quickly.
  • Fixed BingMapsProvider does not work when the Silverlight Application is set as startup project (and not the Web Application as it is the default option).
  • Fixed design-time issue BingMapProvider crashing when opened in the designer.


What’s Fixed:

  • The control will not throw an exception when measured with infinity.
  • Fixed crashes when certain components are individually added in Blend.


What’s Fixed:

  • Bulletgraph now propagates inheritance context along the logical tree to support native bindings to DataContext.
  • Fixed issue when all QualitativeRanges have value equal to double.NaN.
  • Fixed crashes when certain components are individually added in Blend.
  • Improved Blend design time support by creating a better drag and drop and styling experience.


What’s Fixed:

  • RadDomainDataSource Load will now be disabled while there is pending change.
  • RadDomainDataSource will now correctly AutoLoad when the Value of a QueryParameter changes.
  • Fixed: When a QueryParameter.Value changes, an exception is thrown if the pages of data coming back are less than the previous amount and the user was on a page that does not exist anymore.


What’s Changed:

  • DragQuery is no longer raised with DropImpossible DragStatus when there is not approved destination.

What’s New:

  • Added: CurrentCursor property in DragOptions to change current mouse cursor while dragging.
  • Providing Autodrag attached property for handling drag scenarios easier.
  • Fixed: AutoBringIntoView=false does not have effect if set in App constructor.

What’s Fixed:

  • Fixed: DragCue is not positioned correctly on fast drag in native mode. (WPF only).
  • Fixed: Drag Offset is not reset after drag is performed.
  • Fixed: Fast click triggers drag logic.
  • Fixed: When draggable items are nested e.Options.Source is always the parent draggable item.
  • Exception is thrown when dragged element is not visible on start drag. (WPF only).
  • Fixed: Issue with native D&D – phantom window is visible when press alt+tab (WPF only).
  • Fixed: Opening Message Box on drop complete cause calling DropComplete to be raised twice.
  • Fixed: DragDropeventArgs.GetElement() does not work correctly when hosted in Windows forms.


What’s Fixed:

  • Keep the content's state when the selected tab is changed.
  • Selection logic must be triggered only once on start up.
  • TabControl can have multiple TabItems in MouseOver state when another control is shown ontop in SelectionChanged event.


What’s New:

  • Added DataPagerPresenter.PageSize property to allow TemplateBinding to RadDataPager.PageSize property.
  • Added DataPagerPresenter.ItemCount property to allow TemplateBinding to RadDataPager.ItemCount property.

What’s Fixed:

  • Fixed: The GoToNextPage and GoToLastPage buttons are not correctly enabled/disabled when the number of pages changes.
  • Fixed: OneWay binding the ItemCount property does not work correctly in Unbound Mode.
  • Fixed: DataPagerTextBox does not change IsEnabled when the corresponding CanExecuteChanged is fired.
  • Fixed: PageSize Binding is broken if the DataContext is assigned after EndInit has been called.


What’s New:

  • FilterOperatorsLoading event is now fired on a member change even if the new member is of the same type.


What’s Fixed:

  • Does not respect the VideoStretch property of the RadMediaItem in FullScreen.
  • Cannot apply a theme.
  • Clear "Time" and "Position" properties when media is stopped.
  • IsAutoReverse is not working as expected. Once revered the playlist, the items start playing for less than a second.
  • IsPlaylistVisible property does not work correctly when set in component tag.


What’s Fixed:

  • Fixed issue with proportional gradient brushes in linear gauge bar indicator.


What’s Fixed:

  • Fixed: DoubleUtil cannot work with large numbers.
  • Fixed: Problem with large numbers.
  • Fixed: SetThumbsPosition does not calculate the correct width/height.
  • Fixed: The Slider thumb cannot be moved to a point when the Expression_Dark theme is applied.
  • Fixed: Track does not return correct size.
  • Fixed: Calling UpdateLayout crashes the Chart.
  • Fixed: Infinite loop occurs when using Converter in TickTemplate.
  • Fixed: The slider is misplaced when its width is set.


What’s Fixed:

  • Cannot be data bound.


What’s Fixed:

  • Calling Update on UploadItem causes SOE.
  • Add More Files button is not localized.
  • Incorrect Browse, Pause button states when automatic upload is enabled.
  • Incorrect UI state when canceling the session in the UploadStarted event and IsAutomaticUpload is true.
  • MaxFileCount property is not synchronized with Append Files button visibility.
  • NullReferenceException when trying to upload files and the RadUpload's Visibility is set to Collapsed.
  • RadUploadItem ValidateEvent is not fired during an automatic upload
  • Regression issue when trying to delete files from the e.SelectedFiles in the FilesSelected event.
  • UI state is incorrect when appending multiple files
  • When MaxFileCount is 0 there is no warning.


What’s Fixed:

  • ToggleButton check states in Expression_Dark theme are visually the same.
  • DropDownButton: When KeepOpen is set to true you cannot close the drop down even if you click on the button.


What’s Fixed:

  • When placed in TileViewItem and the application is run OOB, nothing is rendered.


What’s New:

  • Add a property in order to change the default "Folders" text.


What’s New:

  • Allow expand/collapse animation with easings.

What’s Fixed:

  • PanelBarItem stays selected if PreviewCollapsed is handled.
  • PanelBarItem's Header causes an exception during the change of the theme.


What’s Fixed:

  • Gap between CalendarItems and ClockItems is large and the user can click between the items. Increased the hit area of the buttons.


What’s Fixed:

  • The filtered items are not shown when IsFilteringEnabled is changed runtime.
  • RadComboBoxItem - removed ButtonChrome from the control template in order to optimize performance and memory consumption.
  • Application theme foreground is applied on the SelectedItem when other theme is applied locally.


What’s Fixed:

  • ContextMenu placement is wrong when Placement is not Absolute and Browser is Zoomed.
  • HideDelay property is ignored for root menu items in RadContextMenu.
  • RadContextMenu does not restore focus to previous focused element in certain cases.
  • RadContextMenu Opened event is fired after RadMenuItem CanExecuteChanged.
  • Right click on submenu item in RadContextMenu does not close the context menu.


What’s New:

  • RadDateTimePicker default height is now 22.


What’s Fixed:

  • Docking doesn't work correctly when the FlowDirection property is set to RightToLeft.
  • When Docking is hosted in a WindowsFormsHost resizing with keyboard doesn't work (throws an exception).


What’s New:

  • Add TopLevelShowDelay and TopLevelHideDelay properties.
  • RadMenuItem - removed ButtonChrome from the control template in order to optimize performance and memory consumption.
  • Automatically assign RadMenuItem.Command property if data item is ICommand.

What’s Fixed:

  • CanExecuteChanged event handler is collected by GC.
  • RadMenuItem CanExecuteChanged of ICommand is fired several times unnecessary.
  • RadMenuItem Command executed is fired only when CanExecute return true.
  • RadMenuItem IsEnabled property is overridden by Command CanExecute.
  • Root level menu items in RadMenu are not opened immediately on mouse enter from opened item.
  • When browser is zoomed RadMenu flickers when hover over the menu items.


What’s Fixed:

  • Broken binding in RadWindow themes throws errors in Output.


What’s Fixed:

  • Error messages displaying that the recurrence rule is not valid is now localized.
  • Fixed memory leak in RadScheduler.
  • AllDayAreaHeight and TimeSlotTemplateSelector bug in Windows7 theme for RadScheduler.

Visual Studio Extensions for Silverlight

What’s New:

  • IMPROVE: Silverlight 4 tools detection.
  • IMPROVE: Installer prompts for Visual Studio close when Visual Studio blocks the setup.
  • IMPROVE: Installer UI - installation wizard requires less clicks.
  • IMPROVE: Installers should not display the FatalError screen when a known error happens.
  • IMPROVE: Progress text refresh happening too fast.
  • IMPROVE: Project Management wizards can not finish when no assemblies are selected.
  • IMPROVE: Visual Studio Templates setup - display informative message when the setup fails.

What’s Fixed:

  • FIX: All VS template files are saved in the machine's default encoding instead in Unicode.
  • FIX: Browsed custom distributions not persisted.
  • FIX: Upgrade log shows invalid warnings when upgrading project with GAC references with other GAC references.
  • FIX: Reference not updated if the referenced assembly is contained in the project.
  • FIX: Uninstall/Upgrade failure when Live Demos folder is deleted.

UI for Silverlight

Demo Buy Try

New features & Roadmap

Have a feature request?

Post your feedback via the WPF and Silverlight Feedback Portal.

What's new across all Telerik products?

See all updates


Next Steps

Launch demos

See UI for Silverlight in action.

Check pricing

Purchase individual products or any of the bundles.

Download Free Trial

With dedicated technical support.