This project has moved and is read-only. For the latest updates, please go here.

Silverlight Toolkit December 2008 changes


  • Fixed TreeView click selection behavior. Clicking on the TreeView itself will no longer cause the 1st TreeViewItem to become selected. (Issue #838)
  • Added a new virtual method OnMouseLeftButtonDown to TreeView.
  • Added a new virtual method OnMouseLeftButtonDown to TreeViewItem.


  • Renamed SelectedItemChanged event to SelectionChanged.
  • Renamed OnSelectedItemChanged protected method to OnSelectionChanged.
  • Added a readonly property named IsEditable which is by default always true.
  • Setting ItemSource to INotifyCollectionChanged (ObservableCollection) and making changes to it, will cause the UI to refresh. (Issue #1027)
  • Default value for IsTextCompletionEnabled has been changed from True to False. (Issue #1031)
  • Added ordinal comparison support in AutoCompleteSearchMode.
  • Changed SelectedItem and Text syncup. Any change to the Text property will cause the SelectedItem property to update. (Issue #1035)
  • Added AutoCompleteBoxAutomationPeer class for better UI Accessability.
  • Added the CreateAutomationPeer method to the ISelectionAdapter interface.


  • Changed ButtonSpinner default template to resize according to actual height.
  • ButtonSpinner buttons now act as Repeat buttons. Continuously pressing them will increment/decrement the value accordingly. (Issue #875)
  • Enter key press now causes NumericUpDown to accept a new value.
  • KeyDown event will no longer bubble up from UpDownBase if handeled by the control.
  • Added NumericUpDownAutomationPeer and UpDownBaseAutomationPeer<T> classes for better UI Accessability.


  • Added ExpanderAutomationPeer class for better UI Accessability.
  • Fixed MouseOver VSM state to fire correctly when ExpandDirection is Right.
  • Fixed memory leak when setting the ExpandDirection to Right. (Issue #928)


  • Fixed usage of the Margin property in the default template. (Issue #862)


  • ImplicitStyleManager no longer throws exceptions when loading a theme that styles unreferenced DLLs. (Issue #860)
  • ImplicitStyleManager has been changed to use DefaultStyleKey when looking for styles and not rely on the actual control type. This results in the ability to inherit ISM applied styles. (Issue #949)


  • Added new Microsoft.Windows.Controls.Theming.WhistlerBlue.dll with new WhistlerBlueTheme control.
  • Shipped new Microsoft.Windows.Controls.Theming.WhistlerBlue.xaml theme file.
  • Added new Microsoft.Windows.Controls.Theming.BureauBlackTheme.dll with new BureauBlackTheme control.
  • Shipped new Microsoft.Windows.Controls.Theming.BureauBlack.xaml theme file.
  • Added new Microsoft.Windows.Controls.Theming.BureauBlue.dll with new WhistlerBlueTheme control.
  • Shipped new Microsoft.Windows.Controls.Theming.BureauBlue.xaml theme file.

No changes

  • DockPanel
  • WrapPanel
  • ViewBox
  • HeaderedContentControl
  • HeaderedItemsControl


  • Axis.AxisType has been removed. Instead, there is now a hierarchy of Axis classes. The concrete classes corresponding to previous values of AxisType are: AxisType.Linear->LinearNumericAxis, AxisType.DateTime->DateTimeAxis, AxisType.Category->CategoryAxis, AxisType.Auto->Unsupported. In addition to general API consistency, one nice consequence of this refactoring is that LinearNumericAxis.Minimum/Maximum are now strongly typed as double and the corresponding properties on DateTimeAxis are strongly typed as DateTime - both of which improve the development-time and design-time usability of axes.
  • Axis.ShouldIncludeZero has been removed. This property is meaningless for certain axis types and unnecessary because the same thing can be accomplished by setting Minimum/Maximum accordingly. A consequence of this is that Column/Bar charts by default will not necessarily include the 0 value (and therefore the columns/bars can be truncated). This behavior is consistent with Excel (try charting the values 10, 11, 12), though the truncation is more likely to occur in Charting because different heuristics are involved that are more aggressive with regard to excluding 0.
  • Design-time behavior of DataPoints has been enhanced. DataPoints are now visible by default when dropped onto the design surface in Blend, so styling them should be easier (specifically, they apply their Reveal/Show VSM animation immediately). PieDataPoint now creates a default Geometry (which can be customized interactively by changing the ActualRatio and ActualOffsetRatio properties) which makes it possible to see and understand relevant styling changes. DataPoints in a Chart now show up in Visual Studio without requiring a refresh of the design surface.
  • Chart is now decorated with ContentPropertyAttribute("Series") which means that it is no longer to explicitly wrap Series with <charting:Chart.Series>...</charting:Chart.Series> in XAML. Additionally, this enables Blend to include a Chart's Series in the "Objects and Timeline" pane (as the children of Chart) so that accessing the properties of a Series is considerably easier. Example of simplified XAML syntax: <charting:Chart><charting:PieSeries ... /></charting:Chart>
  • Support has been added for arbitrary numbers of Axes around a Chart. The new AxisLocation enumeration allows the placement of an axis at the Left/Top/Right/Bottom of the plot area; value Auto places the axis automatically. A key and significant consequence of this change is that it is now possible to mix previously incompatible Series on the same chart (example: Column and Bar). The pre-existing "automatically share axes when possible" behavior can now be used to render two LineSeries with a shared independent axis and different dependent axes (one left, one right) on a chart displaying related-but-differently-scaled values (example: an engine's torque and RPM).
  • Column/Bar/Line/ScatterSeries classes now expose optional new properties IndependentAxis and DependentAxis which can be used to force a particular Axis to be used by a particular Series (rather than letting the Series choose from the Chart's Axes collection). These properties allow very specific customization of a Series' axes in situations where maximum control is desired.

Last edited Dec 12, 2008 at 8:13 AM by JustinJosefAngel, version 6


codeplex99 Dec 12, 2008 at 3:11 AM 
DynamicSeries no longer compiles. Renamed to DataPointSeries. Performance seems to have dropped but haven't discovered why yet...