UI Model-based Data Forms Are Web Shell-ready
While a custom Windows Form allowsed the Infinity developer to create a custom user interface, a custom form field layout, and UI interaction logic, the Windows Form code is not callable outside of the form, not easily reusable or extensible, and not supported in Web Shell. Custom features that rely on Windows Form-based technology cannot be displayed by the Web Shell and must be updated. Features that utilize Windows Form technology must be identified and updated. Any feature that contains a FormUIComponent element signifies that an update to the feature is necessary. In these cases, a UI Model must be generated and a WebUIComponent element defined in place of the FormUIComponent element.
Unlike Windows Forms/ClickOnce-based features, with UI Model we no longer put any form specific UI logic in the actual presentation element. Instead, every form is represented by an abstract UI "model" that represents all of the state, metadata, and behavior of the UI form. The model is represented by a .NET class with specific fields, properties, methods, and events that map to the logical fields and UI interactions that are defined by the form. This .NET class has no dependency on Windows Forms, and the assembly that contains the class is assumed to be hosted only in server-side code inside our web service application.
The UI Model allows an Infinity developer to create user interface event handlers and manipulate a data form's metadata using .NET CLR code that lives on the web server. Unlike Windows Form-based data forms, UI Model-based data forms allow the ability to author event handlers that are not tied to the user interface implementation. The user interface code that we write is independent of the user interface.
For more information, see UI Model.