Define scaling for ribbon elements
Applies to Dynamics 365 (online), version 9.x
For application ribbons and updated entity form ribbons there is no scaling. Scaling only applies to forms for entities that weren’t updated and list ribbons displayed using Dynamics 365 for Outlook.
The goal of the Ribbon is to maintain visibility of relevant controls even when the horizontal size of the window changes. To achieve this, the UI definition allows you to control how controls in a group change size in response to changes in the size of the window. This is known as scaling.
Associate groups and controls to layout templates
<Group> element in the ribbon is associated with a
GroupTemplate specifies one or more ways the controls in the group can be presented using
<Layout> elements. Each
Layout may contain one of two types of definition for how the controls in the group are displayed.
<OverflowSection>allows for controls to change relative position depending on the available space.
<Section>controls the number of rows to display and where each control is displayed.
Almost all the
Layoutelements used in ribbons use
<Tab>element must contain one
MaxSizeelement is required because it establishes the default presentation of each
Tabwithout any scaling applied. Scaling occurs when a
Tabis associated with one or more
Scaleelement is associated via the
Sizeattribute with one of the
Layoutelements in the
GroupTemplateused by each
The value of the
Size attribute of any
Scale element must match the
Title of the available
Layout elements specified in the
These values are strings and there is no validation in the XSD to help you select values that are a match. The XML is always case-sensitive.
The following diagram shows how
OverflowSection elements must reference each other to enable scaling
when you are using a
The following diagram shows how
ControlRef elements must reference each other to enable scaling when you
are using a
Use existing group templates
When creating a new group, instead of defining new group templates, you can re-use existing
Associate your new group to that template. For each control in the group, use a
TemplateAlias value from one of
<OverflowSection> elements found in one of the
Layout elements used by that
<OverflowSection> includes an
isv``TemplateAlias that is not used by Dynamics 365 Customer Engagement. This
TemplateAlias is provided to allow ISVs to add controls to that group.
Control how scaling is applied
Scale element in the
Scaling element for a particular tab represents one scale step. Each
Scale is applied sequentially by the order in which the
Scale element appears. When reducing the horizontal space available for the ribbon, each scale element is applied in order from top down. When increasing the horizontal space available, from the smallest space the bottom scale element is in effect. Each of the available
Scale elements are applied in order from the bottom to the top until all the
MaxSize elements are in effect.
Sequence attribute values aren’t used to determine the order in which scaling is applied. Scaling is applied by the relative order the
Scale elements appear in the RibbonDiffXML. The
Sequence value is important for both
Scale elements because all the
MaxSize elements must be grouped together above the
Scale elements. When you add new
Scale elements, be sure that you review the
Sequence default value ranges assigned to all the
MaxSize elements and the
Scale elements. A common error is to assign
Sequence values that could cause the ranges to overlap.