Whats_new

Telerik UI for WPF

Release History

UI for WPF 2011.2712

July 12, 2011

Q2 2011

New Controls:

Breadcrumb

RadBreadcrumb

Build complicated navigation systems through hierarchical data with many levels and easily track the navigation history. With its powerful data-binding mechanism, the control lets you display hierarchical structures, such as directories and relational data.

DataServicesDataSource

RadDataServicesDataSource

This component ensures seamless integration between Telerik data controls and WCF Data Services. Binding to RadDataServiceDataSource is straightforward and absolutely codeless. Thanks to the DataServiceDataSource control your app will become even more responding, as data operations are asynchronously executed on the server, thus ensuring the UI remains responsive.

ImageEditor

RadImageEditor

RadImageEditor is a powerful control for image processing. It supports basic image operations like crop, flip, resize and rotate. The image editor component also allows various color adjustment settings, as well as some more advanced effects like blur, sharpen, hue-shift and more. The component utilizes the power natively supported by Silverlight and WPF pixel shaders to achieve great performance.

PersistenceFramework

RadPersistenceFramework

Save and load the state of your application’s UI and the users’ preferences so that the end users can continue working with the application as it was before closing. For example you might want to keep the Docking-panes’ position, the GridView’s frozen columns, the TreeView nodes expand/collapse state or any other Silverlight control’s settings. (The persistence framework can work over any Silverlight control’s settings, including non-Telerik controls) With the Persistence Framework you can easily save the properties of your UI elements to a Stream object with just a single line of code. Then you can quickly and easily reload the layout from a previous state.

PropertyGrid

RadPropertyGrid

RadPropertyGrid introduces an intuitive and versatile approach to data processing and visualization. Unlike the widely beloved RadDataForm, RadPropertyGrid sets the focus on a single item rather than on a collection of items, exposing many useful features as grouping and search as you type. The main purpose of RadPropertyGrid is to provide highly customizable editing and presentation capabilities that are achieved with a minimal effort.

RibbonView

RadRibbonView

Telerik Silverlight RibbonView is an easy-to-use implementation of the Microsoft Office 2010 Aero “ribbon” UI, which allows you to better organize the navigation functionality of your application into a single and compact toolbar control. Its built-in tabs, menus and buttons, popup engine, dynamic resizing, powerful customization options and Office 2010 Application Menu (Backstage view), make the Silverlight RibbonView your shortcut to creating powerful navigation systems.

TreeMap and PivotMap

RadTreeMap and RadPivotMap Beta

RadTreeMap and RadPivotMap are used to visualize large amounts of hierarchically organized data. Treemaps have been used successfully for visualizing various kinds of data, such as the content of file systems, stock market data, process control data and source code of large programs.

ZipLibrary

RadZipLibrary

Increase the responsiveness of your applications by compressing the data that you send over the internet. With the new Zip Library you can compress data like images, docx or pdf files and send them over the wire. Thus, you will achieve fast and secure transactions.

Changes:

RadGridView

RadGridView

What’s New:

  • Added: EnsureItems() in GVVP MeasureOverride.
  • Added: TypeConverter support when saving values from editor.

What’s Fixed:

  • Fixed: Sorting IsExpand state of the group row.
  • Fixed: The group header is missing when exporting.
  • Fixed: GridViewGroupFooterRow theme was not set from parent.
  • Fixed: RadGridView doesn't handle key down event properly.
  • Fixed: RadGridView.ValidatesOnDataErrors behavior.
  • Fixed: Issue with bring cell into view when frozen columns are present.
  • Fixed: Issue with coerce the max height in Cells panel.
  • Fixed: Converter not applied correctly for filter distinct values.
  • Fixed: The match case button is not untoggled when the Clear filter button is clicked and the filter was never active.
  • Fixed: The selection performed on a child grid was handled by the parent grid and caused exception.
  • Fixed: Null reference exception while ungroup.
  • Fixed: Groups keep their state (expanded or collapsed) after sorting.
  • Fixed: PrepareValue should return original value if ItemsSourceBinding is set.
  • Fixed: Scrollintoview logic to use dispatcher only when should scroll to unmeasured item
  • Fixed: GridViewLengthConverter ConvertFromString.
  • Fixed: ScrollPositionIndicator does not work correctly when ScrollPositionIndicatorTemplate is applied and grid is grouped.
  • Fixed: Column aggregates are not refreshed when grid is grouped and item is deleted.
  • Fixed: Cell has incorrect tooltip after validation fails.
  • Fixed: Issue with expand collapse state.
  • Fixed: Issue where GridViewExpressionColumn would fail to sort when the Expression is a parameterless lambda.
  • Fixed: Programmatically clearing RadGridView.FilterDescriptors will not turn off the filtering funnels of columns that have a custom FilteringControl.
  • Fixed: ScrollIntoViewAsync issues.
  • Fixed: Memory leaks in RadGridView when binding to POCOs.
  • Fixed: Exception was thrown when windows is resized.
  • Fixed: Rows were not loaded when the Os Culture is different from en-US.
  • Fixed: GridViewComboBoxColumn does not show correct lookup values in distinct values.
  • Fixed: Converter ignored from ObjectDataBinder.
  • Fixed: The distinct values CheckBox does not format values according to the current culture settings.
  • Fixed: HierarchyChildPresenter will be set to null when property changed.
  • Fixed: Repeatedly opening and closing the filtering pop-up leads to memory leaks.
  • Fixed: If there is a failing validation no other row will be selectable via mouse left button click.
  • Fixed: ScrollIntoViewAsync does not always work correctly when the row height is variable and virtualization is turned on.
  • Fixed: Exception was thrown when remove then add and remove again one and the same item from a grouped grid.
  • Fixed: Issue with editing items in grouped scenario (edited items goes to the last position).
  • Fixed: Exception is thrown when Delete key is pressed and grid is grouped.
  • Fixed: Null reference in SelectiveScrollingGrid.
  • Fixed: Tab key inside filtering control (RadGridView's internal filtering) navigates through RadGridView.
  • Fixed: GridViewHyperlinkColumn is editable when IsReadyOnly property is true.
  • Fixed: SelectedCells are not synced correctly with SelectedItems when using row selection.
  • Fixed: If GridView.ItemsSource is DataView Multiple sort is not supported.
  • Fixed: RadGridView:Copy/Paste when IsReadOnlyBinding is set.
  • Fixed: Home key navigation does not respect "Frozen" columns.
RadChart

RadChart

What’s New:

  • Added inverse axes support.
  • Exposed public BaseChartItem.HideToolTip() method so you can now close the tooltip of the chart items programmatically.

What’s Fixed:

  • SeriesMapping.ItemsSource not respected when SeriesMapping.CollectionIndex is set.
  • Chart not rebinding on source collection update when populated through SeriesMapping.ItemsSource.
  • NullReferenceException when using SeriesMapping.ItemsSource with non-default chart layout.
  • Layout cycle detected exception in empty-value scenarios for various series types.
  • Memory leak in live data scenario with enabled data sampling.
  • NullReferenceException on unloading the control from the visual tree.
  • Chart populating with data the wrong ChartArea instance in specific databinding scenarios with default view.
  • Localization issue with axis and series item label chart format strings in chart & scheduleview integration scenarios.
  • DataSeries / DataPoint logical tree broken when reusing series across different chart instances.
  • Exception when grouping with sampling enabled and decimal data.
  • NullReferenceException when binding properties of the AdditionalYAxes.
  • ArgumentNullException when SeriesMappings.ItemsSource is DataTable.
  • ArgumentNullException when binding the RadChart.SeriesMappings property in scenario where DataContext is set a bit later in the lifecycle.
  • Converted the defining geometries of self-drawing series (Area,Line,Range) to dependency properties so they can be set via binding expressions.
  • The user cannot drill down after drilling down to the last level and reset is executed in hierarchical data scenarios.
  • ItemClick was not automatically wired for all ChartAreas in hierarchical data scenarios.
  • Y axis zooming was erroneously artificially limited; now it will respect only the MinZoomRange property.
  • Problem with pie/doughnut series and slices that have zero value.
  • NoDataString property of the ChartArea cannot be set with a Style.
  • StackedBar / StackedBar100 series remained invisible in Vista theme due to incorrect animation settings.
  • Cloning issue with Storyboard.RepeatBehavior getter throwing FormatException with custom en-US culture with "," decimal point.
  • Various issues in specific scenarios that use the automatic integration of RadChart and RadTimeBar.
  • Tick labels not rendered when having more than 1024 items.
  • XCategory strings not respected for 3D series.
  • Issue with RadChart in the data template of an ItemsControl when the data is loaded via async BackgroundWorker.
RichTextBox

RadRichTextBox

What’s New:

  • Right-to-Left support.
  • Support for Input Method Editors (IME).
  • Headers and footers.
  • Floating images/UIElements support with text wrapping around them.
  • Added fields support such as merge field, date field, image field and page number field.
  • Mail merge support.
  • Support for theming in RadRichTextBox.
  • Support for rotating of images.
  • Expose RadCompositionInitalizer class to enable MEF loading customizations.
  • Added Print button in Html Print Preview window (Silverlight only).
  • Added dialog for editing custom spellchecking dictionaries.
  • Added UI for setting preferred width of tables.
  • Enhanced RadDocument API to use implicit layout updates when using Insert, Delete, ect.
  • xtended Hyperlink API for RadRichTaxtBox and RadDocument.
  • Added support for editing words in CheckAllAtOnce dialog in RadSpellChecker.
  • Integration with RadImageEditor control.
  • Added IsEmpty property to RadDocument, Section and Paragraph.

What’s Fixed:

  • DocumentContentChanged is not fired on table operations.
  • FindReplaceDialog throws exception on showing when caret is over a word starting with number.
  • Find button is not set as default in FindReplaceDialog.
  • Focus is not managed correctly in RadRichTextBox, causing problems with DataForm.
  • Parent's context menu visible over RadRichTextBox's context menu.
  • RadRichTextBox doesn't validate the first time the pages load when using IDataErrorInfo.
  • SpellCheck dialog hangs when inserted two empty values for searched text and replace value.
  • TextAlignment is not respected in tables when layout mode is Flow.
  • RadRichTextBoxStatusBar doesn't respect layout mode on start.
  • Table border with thickness 0 are visible when exported to PDF.
  • Tabs are not imported in RTF.
  • ParagraphSpacingAfter is not always imported correctly from RTF.
  • Ruler not respecting width and height when section in Landscape orientation mode.
  • Importing carriage returns in the document causes problems with the layout.
ScheduleView

RadScheduleView

New Features:

  • All day area.
  • Small appointments rendering.
  • Appointments filtering.
  • New behaviors.
  • Ability to group-by TimeZone.
  • Visual indication for long appointments.
  • Week Number group headers in Day and Week view.

What’s New:

  • Add HorizontalScrollBarVisibility and VericalScrollBarVisibility properties.
  • Typing on selected slot creates a new appointment and turns it into inline editing mode.
  • Implemented Validation of Edit Appointment Dialog.
  • CreateAppointmentWithDialogCommand added. This command opens a dialog even when the SelectedSlot is null.
  • Rubber band Slot selection.

What’s Changed:

  • The ScheduleView drag-drop operations rely on a new Telerik drag-drop Framework.
  • The item parameter of the GroupHeaderTemplateSelector.SelectTemplate() method contains the corresponding CollectionViewGroup instance.

What’s Fixed:

  • Commands Appointment edit, CreateNew and Delete don't return correct CanExecute.
  • GroupHeaderProxy.Items property is not initialized.
  • The Appointment dialog is opened when read-only slot is clicked.
  • Group headers are stretched proportionally.
  • AppointmentItemProxy.Start/End properties are from Master appointment instead of the corresponding Occurrence.
  • ArgumentOutOfRangeException is thrown when adding first appointment in empty visible range and grouping on more than one level.
  • Calling Window.Show() in the VisibleRangeChanged event throws exception.
  • Changing RadScheduleView.FirstDayOfWeek is not reflected.
  • Horizontal/VerticalSmallChange properties in vertical orientation are incorrect.
  • MonthView group headers do not display the correct date range.
  • NullReferenceException on DragElementHelper.Detach() method.
  • Recurring selection in DayView and WeekView behaves differently.
  • ScheduleView Selection AutomationPeer throws exception.
  • Fixed a bug with ICal importer – the recurrence rule wasn’t parsed correctly in some cases.
  • Drag throws error if you drag while in inline editing mode.
  • Optimized the performance of the TimeRulerPanel.
  • EditAppointmentWithDialog command does not use its parameter.
  • ScheduleView does not work correctly when its control template is changed runtime.v
  • WeekViewDeifinition.VisibleRangeText is not showing the whole range.
  • When editing the time of the EndBy recurring appointment, the last occurrence is lost.
  • InlineEditing does not commit changes.
  • The MouseWheel event is always handled.
RadTreeVieww

RadTreeView

What’s Fixed:

  • Fixed: IsChecked does not work correctly with bindings in virtualized TreeView.
RadTreeListVieww

RadTreeListView

What’s Fixed:

  • Fixed: RadTreeListView throws exceptions when IsReadOnlyBinding is used with more data types.
  • Fixed: RadTreeListView now will update itself automatically on PropertyChange for the child items property bound in TreeListViewTableDefinition.
ExpressionEditor

RadExpressionEditor

What’s New:

  • Added: TryParse extension method to RadExpressionEditor.

What’s Fixed:

  • Fixed: Issue where the items in the EditorItemsTree would be disabled when a theme is set to the control.
DataForm

RadDataForm

What’s New:

  • Added: An order property in autogenerating event args . This will allow developers to control the display order within the event handler.

What’s Fixed:

  • Fixed: Exception when setting commandbuttonsvisibility property in RadDataForm in Style.
  • Fixed: Null ref exception when a contro is placed in RadDataForm directly (not in a field) and raises binding validation exception.
  • Fixed: Command buttons visibility did not refresh in certain cases.
RadTileVIew

RadTileView

What’s New:

  • Added: Allow measuring with Infinity.
  • Added: Support for different row and column sizes.

What’s Fixed:

  • Fixed: MaximizeMode="One" makes the designer crash.
  • Fixed: Decreasing the MinimizedRowHeight programmatically throws an Exception.
  • Fixed: Error when removing the MaximizedItem in MaximizeMode = "One"
  • Fixed: Handling PreviewPositionChanged doesn't work.
  • Fixed: Incorrect layout when adding maximized items.
  • Fixed: Once you've handled the PreviewTilePositionChanged event, this tile can't be moved anymore.
  • Fixed: TileStateChanged event is not fired for the MaximizedItem in MaximizeMode = "One".
  • Fixed: TileView doesn't layout properly when you maximize an item right after you've populated the ItemsSource collection.
  • Fixed: TileView inside a ScrollViewer with HorizontalScrollBarVisibility=Visible doesn't work correctly.
  • Fixed: When using the ScrollBars PageDown/Up the selection change in extended mode.
  • Fixed: Problems with programatic scrolling.
RadMap

RadMap

What’s New:

  • Added SQL geospatial data support through the SqlGeospatialDataReader.
  • Added Bing Traffic provider.
  • Added new GraphColorizer - colorizes map shapes using the approach for coloring a graph.
  • ColorMeasureScale colorizer extended with the ability to specify value range distribution (logarithmic, exponential).
  • Implemented configurable Min and Max scale factor for the framework elements that change element size based on the zoom level.
  • Extended map shapes' ExtendedData with the ability to dynamically reflect property value change.

What’s Fixed:

  • Implemented support for layout rounding of the information layer.
  • MapPath performance optimizations for complex gemetries with hundreds of figures.
  • Issue with simultaneous usage of HotSpot and BaseZoomLevel properties.
  • NullReferenceException in BingRouteProvider when creating a route that probably cannot be calculated.
  • Issue with dynamically added geometries in specific scenarios.
  • Arbitrary strings can now be used as map range labels in the MapLegend control.
  • RadMap MaxZoomLevel property can now be set to a value larger than 20.
  • Issue with setting theme to zoom and provider command buttons.
  • Issue with GeoBoundsNW and GeoBoundsSE properties.
  • MapRange now can be used from XAML.
  • Cache path incorrect when application runs on Windows XP.
  • Map does not catch focus in specific scenarios.
TimeBar

RadTimeBar

What’s New:

  • Added Minute and Second interval types.
  • Added IntervalSpans property to all interval types except DecadeInterval and QuarterInterval (e.g. if YearInterval.IntervalSpans is set to "3", the layout logic will try to arrange 3-year spans across the defined time range; the default value is 1).
  • Added localization support.
  • Added HoveredPeriodChanged event and corresponding HoveredPeriod property for RadTimeBar.
  • Added binding support for PeriodStart / PeriodEnd properties.
  • Added CurrentItemInterval and CurrentGroupInterval read-only properties for RadTimeBar.
  • Added ActualSelectionStart and ActualSelectionEnd read-only properties for RadTimeBar.

What’s Changed:

  • All interval classes are now sealed. In case you need to implement custom interval, you should inherit from IntervalBase.

What’s Fixed:

  • Interval labels not measured when PeriodStart and PeriodEnd change after initial load.
  • Out of memory exception in case second interval is added to the Intervals collection and the period range is changed from a very small one (less than a minute) to a very large one (more than 2 years).
  • ArgumentException when using the mouse wheel on an empty timebar.
Sparklines

RadSparkLines

What’s New:

  • Added normal layout mode for RadColumnSparkline.
  • Added MinXValue and MaxXValue properties for RadSparklineBase to support manual range specification.

What’s Fixed:

  • NullRefferenceException when changing a property of a data bound object in specific scenarios.
  • Column and scatter sparklines not clipped properly when using manual range.
  • Visuals not updated properly after range change.
RadBulletGraph

RadBulletGraph

What’s Fixed:

  • Featured measure not rendered when larger than the range maximum value.
  • ArgumentException when QualitativeRanges are not sorted.
DragAndDrop

RadDragAndDropManager

What’s New:

  • Introduced execution mode to control whether drag operation will be executed through legacy (RadDragAndDropManager) or default (DragDropManager) logic.
  • Fixes in multithread scenarios.
  • Fixed memory leaks in specific scenarios.
DragDropManager

DragDropManager

What’s New:

  • Introduced new drag drop framework with API similar to .net build-in with extended drag abilities:
    • Out of the box drag between applications/ windows.
    • Rich event model for controlling the drag process.
    • Improved support in specific scenarios – Popups, Docking, etc.
TabControl

RadTabControl

What’s New:

  • Added: SelectedItemRemovedBehaviour property.

What’s Fixed:

  • Fixed: An exception occurs in UpdateFocusOnSelectionChange if focused element is Hyperlink.
  • Fixed: GetChildrenCore in RadTabControlAutomationPeer throws null reference exception.
RadGauge

RadGauge

What’s Fixed:

  • Issue when scale Min and Max values are equal.
RadSlider

RadSlider

What’s New:

  • Fixed: ISupportInitialize implementation.
  • Fixed: Throw exception if Ticks and TickFrequency are both set.

What’s Fixed:

  • Fixed: Changing TickPosition property causes selected range to change incorrectly.
  • Fixed: Exception when clicking on track while Minimum and Maximum are both equal to 0.
  • Fixed: Layout Cycle in some cases.
  • Fixed: Min/Max ticks not drawn when Ticks property is set.
  • Fixed: Resizing the slider causes a clear of the selected range.
  • Fixed: SelectionStart and SelectionEnd don't get coerced when Maximum is smaller than both of them.
  • Fixed: The SelectionChanged event should be "protected" instead of "private".

Breaking Changes:

During Q2 we changed RadSlider's default ControlTemplate (Style) to introduce major improvements in the templating mechanism. As a result, the control will allow easier customization and maintenance with non-default themes and ControlTemplates. Also the control underwent a major refactoring, which will also resolve the current issues and limitations. Please be aware that the newly introduced style will cause some backwards incompatibility issues for users who already use custom styles. Not to worry though, for those users we will provide the needed assistance and resources for migrating to the new version.

ToolBar

RadToolBar

What’s Fixed:

  • Fixed: Binding ICommandSource element insider the ToolBar to a RoutedUICommand fails.
Buttons

RadButtons

What’s New:

  • The ControlTemplate of the RadButtons is changed. The ButtonChrome element is removed to improve the templating mechanism of the controls. As a result, the controls will allow easier customization and maintenance with non-default themes and ControlTemplates. However, this  shouldn't cause any backwards incompatibility issues for users who already use custom styles.

What’s Fixed:

  • Fixed: The Property foreground of RadSplitButton doesn't work.
Expander

RadExpander

What’s Fixed:

  • Fixed: Initial expanding animation in some cases It shouldn't animate initially.
  • Fixed: Navigation using tab key does not behave as expected when TabIndex is set in the items contained in the Expander.
  • Fixed: The control cannot be expanded when clicking in the header but outside the header text.
  • Fixed:The ExpanderButton arrow doesn't change its state.
  • Fixed: When IsExpanded is bound to true, the content is not shown initially.
  • Fixed: When the control is loaded, it is first expanded and then collapsed.
  • Fixed: Wrong measure due to the expand animation using GridView.
MaskedInput

RadMaskedInput

What’s New:

  • After toggling the value sign, the caret should be positioned at the beginning.
  • Allow two-way binding to the formatted value.
  • Different focusing and selection behavior when tabbing or focusing the control with the mouse.

What’s Fixed:

  • Fixed: Focusing the control in procedural code is incorrect.
  • Fixed: Last required token is not validated.
  • Fixed: Pasting value causes an exception.
  • Fixed: Pressing "Alt + Random Key" throws an exception.
MaskedTextBox

RadMaskedTextBox

What’s Fixed:

  • Fixed: Incorrect UI state when the control is empty using DateTime mask.
  • Fixed: The MaskedTextBox Value is displayed outside the control's borders.
PanelBar

RadPanelBar

What’s New:

  • The setter of the Orientation property in OrientationChangedEventArgs.cs is made private.

What’s Fixed:

  • Fixed: Second level items are not stretched in ExpressionDark.
ContextMenu

RadContextMenu

What’s New:

  • Added: Opening event.

What’s Changed:

  • The default event name is now ContextMenuOpening.
  • RadContextMenu will open on ApplicationKey press.
  • RadContextMenu is synchronized with ContextMenuService.IsEnabled property.
  • RadContextMenu can be opened on Disabled elements.
  • RadMenuItem that is not in RadMenu or RadContextMenu will update its CanExecuteChanged state on Loaded.

What’s Fixed:

  • ContextMenu should be placed at bottom when opened with keyboard.
  • Wrong RadMenuItem is focused when using AccessKey.
Docking

RadDocking

What’s New:

  • The tool windows now support the Windows 7 gestures for maximize, minimize, etc.
  • Added: ActivePane property.
  • New Behavior: When dragged out of the Docking control the panes are losing the inherited DataContext.
  • ControlTemplate change - Compass, RootCompass and VisualCue have been removed from the Docking's ControlTemplate. The Docking control now generates them itself. To customize the control you need to set the respective StyleProperties of the Docking control.

What’s Fixed:

  • Greatly improved the performance in Windows XP and Windows Vista/7 without Aero.
  • RadPane holds weak reference to its PaneGroup even when RemoveFromParent is called.
  • When a PaneGroup is dragged out, always the last Tab becomes selected.
  • Fixed a frequently reported memory leak.
  • ContextMenu.PlacementTarget is not reset when a ToolWindow is closed.
Menu

RadMenu

What’s Fixed:

  • Cannot open FileDialogs in Click event when RadMenuItem is clicked with Enter key.
  • TopLevelShowDelay does not work.
  • Wrong RadMenuItem is focused when using AccessKey.
  • RadMenuItem that is not in RadMenu or RadContextMenu will update its CanExecuteChanged state on Loaded.
Window

RadWindow

What’s New:

  • Support for the Windows 7 gestures for maximize, minimize, etc.

What’s Fixed:

  • Greatly improved the performance in Windows XP and Windows Vista/7 without Aero.
  • If there is a slider placed in the RadWindow, the slider causes some layout issues.
Transition

RadTransitionControl

What’s Fixed:

  • Triggering transition in a RadTransitionControl that is placed inside a RadWindow that has just been closed throws NullReferenceException.

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

Get Started Waves

Next Steps

Launch demos

See Telerik UI for WPF in action.

Check pricing

Purchase individual products or any of the bundles.

Download 30-day free trial

With dedicated technical support.