Parallels in WPF and WinForms Support - kaisu1986/ATF GitHub Wiki

This section shows similarities in WinForms and WPF platforms in application support.

Table of Contents

Namespace Contents

Comparing the contents of similarly named namespaces in namespaces that begin with Sce.Atf and Sce.Atf.Wpf, such as Sce.Atf.Applications and Sce.Atf.Wpf.Applications, reveals they have similar or identically named classes and interfaces — with similar capabilities. For example, the previously mentioned namespaces both have CommandId, ErrorDialogService, LayoutContexts, and StandardEditCommands classes. Both have IControlHostClient, ILayoutContext, and IViewingContext interfaces.

In general, to get the same functionality, your WPF application would use or implement the WPF version of the class or interface.

Common Interfaces and Classes

ICommandService is the same on both platforms. Although each has their own CommandService class that implements ICommandService, both inherit from Sce.Atf.Applications.CommandServiceBase.

DOM support is largely platform agnostic, too. The main difference is that WPF has its own DomRecorder component, since this is a UI related component.

Similar Capabilities

Some features are similar in both platforms, but provided in a different way.

For example, both platforms offer window docking. A WinForms ATF application uses WindowLayoutService to implement a dock, but WPF's docking support is in the namespace Sce.Atf.Wpf.Docking. Both platforms implement a distinct WindowLayoutServiceCommands component, but both derive from the common Sce.Atf.Applications.WindowLayoutServiceCommandsBase.

Topics in this section

⚠️ **GitHub.com Fallback** ⚠️