User interface development home page

Important

Welcome to the documentation for Microsoft Dynamics 365 for Operations on docs.microsoft.com. We are migrating our content here from the Dynamics 365 for Operations Help Wiki.

This topic contains links to topics about developing user interface elements.

The user interface for Microsoft Dynamics 365 for Operations differs significantly from the interface for Microsoft Dynamics AX 2012. The client in Dynamics AX 2012 is a Microsoft Win32 application that has extensions that use ActiveX, WinForm, or WPF controls. The X++ application logic runs on the client for the form and table methods, and some logic occurs on the server. For controls, both the X++ logic application programming interface (API) and the physical Win32 control are tightly connected on the client. The client in Dynamics 365 for Operations is an HTML web client that runs in all major browsers. These browsers include Microsoft Edge, Internet Explorer 11, Chrome, and Safari (see System requirements). The move to a web client has produced the following changes to client forms and controls:

  • The physical presentation of forms and controls is now HTML, JavaScript, and CSS within the browser.
  • Form controls are split into logical and physical parts. The X++ logical API and related state run on the server.
  • The logical and physical parts are kept in sync through service calls that communicate changes from each side. For example, a user action on the client creates a service call to the server that is either sent immediately or queued so that it can be sent later.
  • The server tier keeps the form state in memory while the form is open.

The form metamodel continues to be used to define controls and application logic. This approach enables Dynamics 365 for Operations to support almost all the existing Form, Form DataSource, and Form Control metamodel and X++ override methods. However, some control types, properties, and override methods have been removed, either because of incompatibility with the new platform or for performance reasons. For example, ActiveX and ManagedHost controls can no longer be used to add custom controls, because they are incompatible with the HTML platform. Instead, a new extensible control framework has been added that lets you add additional controls.

Tutorials

Forms

Controls

Messaging

Form pattern guidelines

Form patterns Support form patterns Sub patterns
Details Master
Details Transaction
Form Part Section List
List Page
Simple Details
Simple List
Simple List and Details
Table Of Contents
Task Single
Task Double
Wizard
Workspace
General Form Guidelines
Advanced Selection
Dialog
Drop Dialog
Lookup
Factbox
Custom Filter Group
Dimension Entry Control
Dimension Expression Builder
Fields and Field Groups
Filters and Toolbar
Fill Text
Horizontal Fields and Buttons Group
Image Preview
List Panel
Nested Simple List and Details
Section Chart
Section Power BI
Section Related Links
Section Stacked Chart
Section Tabbed List
Section Tiles Tabular Fields
Toolbar and List
Toolbar and Fields
Workspace Filter Group

Control extensibility