Intersoft ClientUI Documentation
Controls and Features Added in ClientUI 5

Intersoft ClientUI 5 adds over 30 new controls to its already comprehensive tools portfolio for the Silverlight and WPF application development. ClientUI 5 delivers a vast array of advanced controls essential to building line-of-business applications, ranging from a powerful grid view, tree view, resizable layout to an Outlook-style navigation pane and rich document viewers. The new release also adds significant enhancements to the existing controls as well as new framework features across Silverlight 3, Silverlight and WPF platforms.

This topic contains the following sections.

Framework

Data Access Framework

ClientUI 5 adds a powerful data access framework that streamlines the development processes of data-aware application in Silverlight and WPF. The new ClientUI data framework supports both Microsoft WCF RIA Services and IdeaBlade DevForce as the data service provider. It is designed with a solid architecture that enables you to interact with each service layer in loosely-coupled fashion, which is ideal for data applications implemented using MVVM architectural pattern.

The data access framework serves as a fundamental building block for handling server data operation in Silverlight and WPF applications, which includes server access support for data retrieval operation such as server data paging and server data filtering, as well as data transaction operation such as add, update, delete and batch update. For more information, see Data Access Overview.

Document Framework

In addition to the solid data framework, ClientUI 5 also ships with a comprehensive framework that facilitates rich document creation for Silverlight and WPF applications. The document framework enables you to create a single content that can be consistently viewed in both Silverlight and WPF applications. ClientUI also comes with a range of document viewers allowing users to view the documents in high-fidelity and WYSIWYG manner, search, zoom and print the documents. For more information, see Document Framework Overview.

New Controls

Data Controls

ClientUI 5 is strongly focused in line-of-business controls particularly in the advanced data controls such as grid, data pager and data filter. The ClientUI data controls are built to adhere to the industry's best practice in design and architecture including full support for MVVM design pattern.

Please refer to the following table for the complete list of new data controls available in ClientUI 5.

UXGridView
A high performance, MVVM-ready data grid control
supporting data paging, filtering, grouping, and more.
UXDataPager
A flexible, MVVM-ready data paging control to provide
paging functionality to any compatible ItemsControl.
UXDataFilter
A a versatile data filtering control to provide filtering
functionality to any compatible ItemsControl.

Document Controls

ClientUI 5 provides state-of-the-art user interface controls for displaying documents in high-fidelity resolution with WYSIWYG layout. The document controls facilitate users with rich viewing experiences allowing them to easily view, zoom, search, print and navigate throughout the pages in the document.

UXDocumentViewer
A multi-purpose document viewer that accepts fixed
document with full-fledged user interaction features.
XPSDocumentViewer
A high-performance viewer control for XPS document
supporting search, text selection, copy, print, and more.

Navigation and Advanced Content Controls

ClientUI 5 also adds versatile hierarchical navigation controls and rich content controls that are essential in building modular applications with complex navigation requirements. The navigation controls are built upon ClientUI Navigation Framework to ensure consistent and reliable navigation experiences.

UXNavigationPane
A feature-rich, Outlook-style navigation control with fluid item
resizing, automatic overflow, and more.
UXTreeView
An MVVM-ready tree view control with built-in navigation
and rich UX features.

User Interface Controls

ClientUI 5 continues to complete its user interface controls by adding several controls essential to building rich business applications, such as listed in the following table.

UXResizablePane
A fluid content control with built-in resizing and expand/collapse.
UXScrollBar
A flexible scroll bar control with sleek Aero glass style.

Enhancements to Existing Controls

Improved Memory Management

All existing ClientUI controls have been enhanced with an improved memory management. This means that virtual content controls such as UXPopup and UXContextMenu are now automatically removed from the global handlers instead of waiting the system to dispose the instances, when they are no longer referenced or the owner of the controls have been removed from the visual tree. Consequently, the complex controls that consume these virtual content controls will also perform faster with better resources management.

In addition, the UXFrame and UXPage which serves as the fundamental navigation components have also been significantly improved with resource-efficient navigation processing. To learn more about ClientUI navigation framework, see Navigation Overview.

Smooth Content Transition

The ContentTransition control now supports smooth animation when transitioning to a fairly heavy content such as a page with several data grids and asynchronous data retrieval. A new property called TransitionStrategy has been added to support this new feature. By default, TransitionStrategy is set to Realtime to preserve the compatibility with previous version. For more information, see ContentTransition.

MVVM Support for Page Navigation

The ClientUI navigation framework, particularly UXPage, is now enhanced to support MVVM pattern natively which enables you to write user interaction logic entirely in the ViewModel. Previously, you rely on OnNavigatedTo method in the page's code-behind to implement custom navigation logic, for instances, to parse the query string and assign the data context accordingly. Although it works, it might not be ideal in MVVM pattern which requires user interaction logic to be implemented in ViewModel rather than in page's code-behind. In this release, you can now implement custom logic during navigation using commanding. To learn more about this new feature, see NavigatedCommand property.

Framework Libraries

In addition to the enhanced controls, ClientUI 5 also includes numerous enhancements to its core libraries such as the navigation and drag-drop framework. All controls that are built upon the drag-drop framework now supports cross windows in WPF. This means that you can now drag an item from a window and drop it to a valid object in another window such as shown in the following illustration.

 

The cross-window drag and drop support is built-in and does not require additional code. For more information about the ClientUI drag-drop framework, see Drag-drop Framework Overview.

The navigation framework also receives significant enhancements to support more advanced URI synchronization which delivers reliable and consistent navigation experiences in hierarchical and complex navigation scenarios. The enhancements are specifically consumed by advanced navigation controls such as UXNavigationPane in which the navigation control may contain nested navigation sources that are expected to synchronize along with the control. To learn more about this feature, see Understanding Automatic Navigation Synchronization Behavior.

Integration with IdeaBlade DevForce

Starting in this release, IdeaBlade DevForce Universal is now installed along with Intersoft ClientUI. The integration enables a streamlined development of cross-platform data applications in an end-to-end approach, from the view (UI) design to the entity modeling and data services. Both tools are built with the industry's most advanced design and architecture, allowing you to create scalable data applications that target multiple client platforms such as Silverlight and WPF using the same codebase. To learn more about implementing server data access using DevForce in ClientUI applications, see Data Controls Overview.

More importantly, both tools provides full support for MVVM development which is the recommended design pattern for building applications with high maintainability, scalability and testability. To learn more about MVVM pattern, see MVVM Pattern Overview.

The DevForce integration is more than just streamlined installation experiences. It also integrates with ClientUI in many ways such as:

New Visual Studio 2010 Project Templates

In addition to many new controls and framework enhancements, ClientUI 5 also provides dozens of new Visual Studio 2010 project templates targeting both Silverlight and WPF development platforms. Each project template comes with beautifully-designed user interface and rich navigation experiences, enabling you to jump start your next-generation client application in less time with less effort. All project templates are available in both C# and Visual Basic language.

The new project templates include various business scenarios featuring some of the new controls such as UXResizablePane, UXNavigationPane, UXTreeView and UXGridView. Each project template demonstrates the best practice of using these new controls together to create visually engaging business applications. This release also includes new project templates to work with both WCF RIA Services and DevForce Services.

For detailed list of the new project templates, see Introduction to ClientUI Project Templates.

Comprehensive Visual Basic Samples

The VB version of ClientUI live samples is now available which contains a total of 300+ business-inspiring examples. The VB version of the sample can be found in the program group such as shown in the following illustration.

New Technology/MVVM Samples

As in every new releases, the ClientUI live samples is added with dozens of new samples to demonstrate the new controls' features. To browse all the new samples added in this release, see Locating the Samples in Local Installation.

Additionally, numerous technology samples are added in this release which demonstrate several key features such as supported cross-platform, unified development model, as well as best practice in using ClientUI controls with other technologies like WCF RIA Services and DevForce Services. For the complete list, see Samples Overview.

To see the list of new walkthroughs and how-to topics, please refer to Walkthroughs and How-to Topics.

See Also

Other Resources