Silverlight Controls New Features - 2010 Volume 2

Create killer apps today that make your application shine with blazing speed on top of our newly introduced, Unified XAML Product Strategy. With greater parity between our WPF 4 and Silverlight 4 controls, plus support for RIA Services and new controls and features that take advantage of Microsoft® Visual Studio® 2010 to deliver superior user experiences.

 

Unified XAML Product Strategy - NEW!

With the convergence we've seen in the releases of WPF 4 and Silverlight 4 from Microsoft, it's increasingly clear that the future on these platforms is one in which Killer Applications will be written for multiple screens (desktop, browser and mobile)! To this end, we have re-aligned our namespaces for all of our XAML controls (including NetAdvantage® Silverlight controls for Line of Business application development) to give you a more unified foundation upon which to develop both Silverlight and WPF applications. We call this our new Unified XAML Product Strategy, and it's big!

You'll find that starting with this volume release, we are offering you much greater parity between our WPF and Silverlight for Line of Business application development control toolsets. Shared code (and common APIs across platforms) will simplify both your development and ours, so you can go-to-market faster. We are lessening your learning curve, and making it easier for you to migrate your Silverlight applications to/from WPF. We've also renamed our compiled assemblies to be consistent with our new namespaces, and to make it easier for you to load and/or filter just the controls (by target platform, version, runtime and path) you need into Visual Studio 2010 using its Add Reference dialog.

We know these namespace changes will introduce some changes into existing legacy Silverlight application projects when upgrading to 2010 Volume 2, but we have redesigned our toolset around the Unified XAML Product Strategy because the market is now converging in this direction and the promised benefits are substantial. To help you make this upgrade, we have created an upgrade utility that will assist you to more quickly upgrade your legacy Silverlight application projects. Extensive documentation on the namespace changes exist in the help, and our Developer Support team is going to treat every namespace-related support case as Priority so you will be able to get a response from us in one business day.

 

RIA Services – NEW!

Now you can directly integrate with Microsoft® RIA Services using the Silverlight data grid control. You can use a DomainDataSource as the Silverlight data grid control’s ItemsSource, and it will automatically detect the RIA Service on the other-end and perform operations like paging, editing, sorting and grouping as well as CRUD operations (create, read, update and delete) through the DomainDataSource. Any paging or sorting settings of the DomainDataSource automatically sync for you on the user interface of the Silverlight data grid control.

Sort, edit, paginate, and group your data within your Silverlight data grid with the usage of RIA Services.

 

xamColorPicker – NEW!

A color picker is a Silverlight dropdown control designed to allow your users the ability to select a new color, stored as the SelectedColor property of xamColorPicker™ whenever:

  • You set SelectedColor as the developer
  • A user clicks on a color box (area of color)
  • Within the Advanced Color Editor (ACE), the user has finalized a color value to be selected
  • A user hovers over a color box (area of color) which temporarily selects the color similar to how you can preview a color selection in Microsoft Office® 2010

A selected color changed event fires whenever the selected color changes and you can use the SelectedColor as a WPF data binding context.

Select a new color from this Silverlight dropdown control similarly to how you would in Microsoft Office.


Recent Color Palette

Except for colors being temporarily previewed, all color selections are added into the RecentColors collection of the control, and displayed as one of the color picker’s most recently used color palettes. Since it is an ordinarily observable collection, you can add colors programmatically to the RecentColors collection.


Advanced Color Editor

Users can click the "Advanced" button to bring up the Advanced Color Editor (ACE) that will let your users set the RGB (Red Green Blue), HSL (Hue Saturation Luminosity) and CMYK (Cyan Magenta Yellow Black) values of the color. Each color system also allows the user to set the Alpha channel through a separate slider control, and all provide instant visual feedback of the selected color.


Derived Palettes

The color picker control can display one or more derived palettes (configurable using the DerivedPalettesCount property) that are automatically generated from your user's color selections. The reasoning works like this, if your user has just selected on shade of color, then it's likely that one of the derived palettes will have a closely-related shade of color that your user might be interested in picking next.

 

xamGrid – Enhanced!

This release further enhances the fastest Silverlight data grid available with new features that cross the divide between typical Internet applications and what you can deliver in the way of truly Rich Internet Applications (RIAs) using Silverlight 4 and Infragistics xamGrid™.


Column Chooser

Your users have seen it in Microsoft Outlook where they can add/remove columns from their mailbox view, and they have asked for it in your applications because it is a powerful way of enabling users with the ability to customize their data grids to show only the columns relevant to them. Now you can provide your users with this column chooser user experience in your xamGrid-powered Silverlight applications with a quick call to the ShowColumnChooser method.

Column chooser displays a dropdown user interface allowing your users to interactively show or hide any of your Silverlight data grid's columns from a list of columns in that ColumnLayout, each with a checkbox indicating that column's visibility. Users can re-order the sequence of columns by dragging a column to its new position. Users can dismiss the column chooser by clicking its close button, or you can dismiss it programmatically with the HideColumnChooser method on xamGrid. Should there be certain columns that you do not want users to be able to hide, then you can set the IsHideable property on that column to false (by default, all columns can take advantage of this column chooser functionality if you opt to show the column chooser).

Provide users the ability to customize their grids to only display the columns they want to see with the Silverlight xamGrid Column Chooser feature.


RTL and BiDi Language Support

Make your Silverlight RIA more global with support for Right-To-Left (RTL) and Bi-Directional (BiDi) languages. All you have to do is set the new FlowDirection property we have added to xamGrid to take advantage of this new piece of localization functionality.


Tooltips

You can define hi-fidelity tooltips within the data grid user interface for your data cells. You can elect to have tooltips always appear (Always), appear only when a cell’s content overflows its boundaries (OverflowOnly), or never appear (Never) by setting the AllowToolTips property. The default tooltip value displayed varies by column type:

  • Text columns default to displaying the cell's string value
  • Image columns default to displaying the cell's image
  • Date columns default to displaying the date, in string format
  • Hyperlink columns default to displaying their URI
  • Template columns default to displaying their key value, in string format

You can customize the appearance of your data grid's tooltips through the ToolTipStyle property, and you can change the way it shows its value from the default by configuring the ToolTipContentTemplate, which is a data template whose data context is that row's data.

This Silverlight grid displays a tooltip when a cell's content is too much for its column width or boundary.


Header Text Alignment

It is now easier than ever before to adjust the text alignment of your column headers. Rather than defining a specific style to apply to your column headers, you can simply set the new HeaderTextHorizontalAlignment or HeaderTextVerticalAlignment properties on the column, column layout (inherited by all columns within that layout) or grid control level (inherited by all column layouts).

Set the header text alignment (vertically or horizontally) at the column level, column layout level, or at the grid control level.

 

xamWebChart – Enhanced!

In response to customer requests, we have updated the xamWebChart™ control with additional features, functionality and chart types. It includes the integration of xamZoombar™ with the line of business charting control which enables your users to perform advanced zooming and panning from within xamWebChart. As part of this enhancement, the following additional chart types have been added:

Area Stacked 100% Bar Scatter Line
Funnel Stacked Column Stacked 100% Spline
Spline Area Point Stacked Spline Area
Stacked Area Stacked 100% Column Doughnut
Stacked 100% Area Stacked Line Spline
Stacked Bar Candlestick Stacked 100% Spline Area
Box Stacked 100% Line Stock
  Stacked Spline  

 

xamContextMenu – Enhanced!

Our Silverlight xamContextMenu™ now supports the new right mouse click functionality that Microsoft added to Silverlight 4, allowing it to more naturally open a context menu in response to a right mouse click by default.

Earlier versions of the Microsoft Silverlight browser plug-in had required the plug-in to be configured with its Windowless attribute set to true in order to use a right mouse click to open a context menu—this is no longer required in Silverlight 4. For this reason, and because it is more natural for users to associate a right mouse click with the opening of a context menu, we have changed the default OpenMode to RightClick.

The Silverlight xamContextMenu control now supports the usage of a right mouse click to open a menu, providing additional options to users.

 

IDataError and INotifyDataError – NEW!

During data binding operations, IDataErrorInfo and INotifyDataErrorInfo are automatically detected and used if available to immediately verify and notify users of errors in the data values they edit. This all goes on completely transparently to you, the developer.

Notify users of data entry errors as they occur.

 

German Language XAML Satellite Assemblies – NEW!

Now you can expand the market for your Rich Internet Applications to German-speaking users, with our new satellite assemblies that include translations for all static text appearing in our Silverlight controls' dialogs, buttons and UI elements. You will find localized satellite assemblies placed in a "de" subfolder under the main "bin" folder where you've installed our other compiled assemblies.

Satellite assemblies include translations for static text in dialog boxes, on buttons and other elements of your application.


Using the localized, satellite assemblies only translates static run-time text to German (for instance, the names of built-in filter operators, or replacing the default "Count" label with "Anzahl" in the German user interface). The above screenshot illustrates why you must still localize text that is specific to your application (for instance, column names in your database schema such as "department" and "salary"), and this is something which is easily done through the properties of our Silverlight controls.

In order for your Silverlight XAP to include the German satellite assemblies you must unload the main project from Visual Studio 2010, and edit the .csproj (if using C#) or .vbproj (if using VB.NET) file to add German (de) to your list of supported cultures. Add the following tag under <PropertyGroup> if it does not already exist (otherwise, ensure that de is among its list of semicolon-separated locales):

<SupportedCultures>en;de</SupportedCultures>

Then save and reload the project into Visual Studio 2010 with the new German (de) culture added.

You can force the localized satellite assemblies for German to be used (if the client machine supports German as a UI culture) by setting the current UI culture parameter on the "object" tag in the .aspx or .html file that loads your Silverlight-based application:

<param name="uiculture" value="de" />

See Localizing Silverlight-based Applications in the MSDN Library if you need further information on localizing your applications for Microsoft Silverlight.

 

Silverlight 4 Builds – NEW!

Take advantage of the latest run-time features of Silverlight 4 and .NET Framework 4 with all of our control assemblies now being built against version 4 of the Microsoft Silverlight 4 plug-in.

 

See What's New in Prior Releases

Every release of Silverlight controls for line of business application development adds value and features onto the release that came before. You can find out more about what was new in previous volume releases here, or by consulting the "What’s New" page in the accompanying documentation.