Differences Between Silverlight for the Web and Silverlight for Windows Embedded (Windows Embedded CE 6.0)

1/6/2010

Silverlight for Windows Embedded differs from Microsoft Silverlight 2 in the following ways:

Silverlight Silverlight for Windows Embedded

Supports code-behind that is written in Visual C# .NET Framework classes, Visual Basic, IronPython, and JavaScript.

Supports code-behind that is written in C++ only.

Hosts the object tree in a plug-in for an Internet browser window.

Hosts the object tree in a visual host that has an underlying Win32 window.

Used for developing interactive applications for the Web.

Used for developing user interfaces for shells and applications that run on a Windows Embedded CE powered device.

Supports the ControlTemplate XAML element.

Supports parsing and displaying a ControlTemplate, but you cannot access or modify its predefined elements by using C++ code. You can add new elements to a user control in C++ by calling IXRUserControl::SetContent.

Supports data binding.

Not supported.

Supports event binding directly in XAML through attribute values.

Supports event-binding in C++ by attaching event handlers to UI objects.

Event data is stored in classes that inherit from System.EventArgs.

Event data is stored in structures that inherit from XREventArgs, which are used to specify the type of data that is contained in IXRDelegate<ArgType> objects used for handling specific types of events.

Supports new events in Silverlight 3.

Not supported.

Supports double type values.

Supports float type values instead of double type values. The equivalent object of each XAML element that represents a double value actually represents a float and includes "double" in its name only in order to maintain parity with the name of its equivalent XAML element. For example, see IXRDoubleCollection.

Supports color codes.

Parses color codes from the source XAML markup. You can also define new colors in C++.

Supports the COLORREF type, which can be generated by using the RGB or RGBA macros. These macros accept byte values instead of hexadecimal values.

For more information about identifying the correct BYTE values to use in the RGB or RGBA macro for red, green, and blue, see this Web site.

Supports the ContentPresenter class, which is derived from FrameworkElement.

Supports the equivalent C++ class IXRContentPresenter, which is derived from the intermediate base class IXRControl instead of from IXRFrameworkElement.

Supports the System.Windows namespace.

Supports XAML elements in the System.Windows namespace and provides many equivalent C++ classes. The following XAML elements are not supported:

AssemblyPart

AssemblyPartCollection

DataTemplate

Deployment

Expression

Supports the System.Windows.Control namespace.

Supports XAML elements in the System.Windows.Control namespace and provides many equivalent C++ classes. Supports only the built-in controls in this namespace, and not the extended controls.

To add sound to a UI element, you can include SYSGEN_AUDIO in the OS design, include the mmsystem.h file, and call the PlaySound function inside an event handler. For more information, see Using the PlaySound Function.

Supports the System.Windows.Controls.Primitives namespace.

Supports XAML elements in the System.Windows.Controls.Primitives namespace and provides many equivalent C++ classes. Supports only the built-in controls in this namespace, and not the extended controls.

Supports the System.Windows.Documents namespace.

Supports all XAML elements in the System.Windows.Documents namespace and provides many equivalent C++ classes.

Supports the System.Windows.Ink namespace.

Supports all XAML elements in the System.Windows.Ink namespace and provides many equivalent C++ classes.

Supports the System.Windows.Media namespace

Supports XAML elements in the System.Windows.Media namespace and provides many equivalent C++ classes. The following XAML elements are not supported:

DeepZoomImageTileSource

VideoBrush

Supports the System.Windows.Media.Animation namespace

Supports all XAML elements in the System.Windows.Media.Animation namespace and provides many equivalent C++ classes.

Supports the System.Windows.Media.Imaging namespace

Supports all XAML elements in the System.Windows.Media.Imaging namespace and provides many equivalent C++ classes.

Supports the System.Windows.Shapes namespace

Supports all XAML elements in the System.Windows.Shapes namespace and provides many equivalent C++ classes.

See Also

Concepts

Silverlight for Windows Embedded