property element

The property node defines a specific, configurable piece of data that the component expects from the Microsoft Dataverse.

Available for

Model-driven and canvas apps

Properties

Name Description Type Required Available for
default-value The default configuration value provided to the component. In model-driven apps, this property is only allowed on inputs since the bound parameters expect to have a column associated. string Optional Model-driven apps
description-key Used in the customization screens as localized strings that describes the description of the property. string Optional Model-driven and canvas apps
display-name-key Used in the customization screens as localized strings that describes the name of the property. string Yes Model-driven apps
name Name of the property string Yes Model-driven and canvas apps
of-type-group Name of the type-group as defined in manifest string Optional Model-driven apps
of-type Defines the data type of the property See Using of-type Optional Model-driven and canvas apps
pfx-default-value The default PFX expression value provided to the component. See Using pfx-default-value Optional Canvas apps
required Whether the property is required or not boolean Optional Model-driven apps
usage The usage property identifies if the property is meant to represent a column that the component can change (bound), read-only (input) or output values bound, input or output Yes Model-driven apps

Remarks

This section contains guidance about using the Property element attributes.

Using of-type

The of-type property value must be one of the following:

Value Description Available for
Currency Monetary values between -922,337,203,685,477 and 922,337,203,685,477 can be in this column. Model-driven and canvas apps
DateAndTime.DateAndTime Displays date and time. Model-driven and canvas apps
DateAndTime.DateOnly Displays date only. Model-driven and canvas apps
Decimal Up to 10 decimal points of precision can be used for values between -100,000,000,000 and -100,000,000,000 can be in this column. Model-driven and canvas apps
Enum Enumerated data type. Model-driven and canvas apps
FP Up to five decimal points of precision can be used for values between -100,000,000,000 and -100,000,000,000 can be in this column. Model-driven and canvas apps
Lookup.Simple Allows for a single reference to a specific table. All custom lookups are this type. Model-driven apps
Multiple This column can contain up to 1,048,576 text characters. Model-driven and canvas apps
MultiSelectOptionSet You can customize forms (main, quick create, and quick view) and email templates by adding choices columns. When you add choices column, you can specify multiple values that are available for users to select. When users fill out the form they can select one, multiple, or all the values displayed in a drop-down list. Model-driven and canvas apps
Object Object data type. Can only be used with output properties. Model-driven and canvas apps
OptionSet This column provides a set of options. Each option has a number value and label. When added to a form, this column displays a control for users to select only one option. Model-driven and canvas apps
SingleLine.Email This stores the string time in the format valid for Emails. Out-of-the-box Unified Interface controls automatically make them clickable links. Model-driven and canvas apps
SingleLine.Phone This stores the string time in the format valid for Phone. Out-of-the-box Unified Interface controls automatically make them clickable links. Model-driven and canvas apps
SingleLine.Text This option simply displays text. Model-driven and canvas apps
SingleLine.TextArea This format option can be used to display multiple lines of text. But with a limit of 4000 characters, the Multiple Lines of Text column is a better choice if large amounts of text are expected. Model-driven and canvas apps
SingleLine.Ticker This stores the string time in the format valid for Ticker. Out-of-the-box Unified Interface controls automatically make them clickable links. Model-driven and canvas apps
SingleLine.URL The text expected to provide a hyperlink to open the page specified. Out-of-the-box Unified Interface controls automatically prepend "https://" to input values that doesn't begin with a valid protocol. Only HTTP, HTTPS, FTP, FTPS, OneNote and TEL protocols are expected in this column. Model-driven and canvas apps
TwoOptions This column provides two options. Each option has a number value of 0 or 1 corresponding to a false or true value. Each option also has a label so that true or false values can be represented as "Yes" and "No", "Hot" and "Cold", "On" and "Off" or any pair of labels you want to display. Model-driven and canvas apps
Whole.None This option simply displays a number. Model-driven and canvas apps

Warning

If the manifest.xml file contains at least one dataset, then properties of type Lookup.Simple should be also wrapped into the data-set element.

Value elements that aren't supported

Following of-type property values aren't supported currently:

Value Description
Lookup.Customer Allows for a single reference to either an account or a contact record. These lookups are available for the Opportunity, Case, Quote, Order, and Invoice tables. These tables also have separate Account and Contact lookups that you can use if your customers are always one type. Or you can include both instead of using the Customer lookup.
Lookup.Owner Allows for a single reference to either a team or a user record. All team or user-owned tables have one of these.
Lookup.PartyList Allows for multiple references to multiple tables. These lookups are found on the Email table To and Cc columns. They're also used in the Phone and Appointment tables.
Lookup.Regarding Allows for a single reference to multiple tables. These lookups are found in the regarding column used in activities.
Status Reason A system column that has options that provide more detail about the Status column. Each option is associated with one of the available Status options. You can add and edit the options.
Status A system column that has options that generally correspond to active and inactive status. Some system columns have more options, but all custom columns have only Active and Inactive status options.
Whole.Duration This format option can be used to display a list of duration options. But the data stored in the database is always a number of minutes. The column looks like a drop-down list and provides suggested options like 1 minute, 15 minutes, 30 minutes all the way up to three days. People can choose these options. However, people can also just type in a number of minutes and it resolves to that period of time.
Whole.Language This option displays a list of the languages provisioned for your organization. The values are displayed as a drop-down list of language names, but the data is stored as a number using LCID codes. Language codes are four-digit or five-digit locale IDs. Valid locale ID values can be found at Locale ID (LCID) Chart).
Whole.TimeZone This option displays a select list of time zones such as (GMT-12:00) International Date Line West and (GMT-08:00) Pacific Time (US & Canada). Each of these zones is stored as a number. For example, for the time zone (GMT-08:00) Pacific Time (US & Canada), the TimeZoneCode is 4.

Note

At this time File columns are not supported. More information: File columns

Using pfx-default-value

Use the pfx-default-value property value to evaluate events and properties using Power Fx expressions instead of static default values. You can use this to:

  • Responsively size the control
  • Access connectors
  • Provide sample data
  • Reference theme properties
  • Custom events

Note

  • You can use any Power Fx expression, but you must make sure the expression is valid when importing the control.
  • If you use inner quotes or other special characters, wrap the value in single quotes, For example: pfx-default-value='"Test"'
  • You can reference other controls (including screens) and their properties. Write these references as: %ControlName.ID%.ControlProperty. For example: pfx-default-value='SubmitForm(%MyFormName.ID%)'
  • Write enums, like DisplayType and ScreenTransition as: %EnumName.RESERVED%.EnumValue. For example: pfx-default-value='Back(%ScreenTransition.RESERVED%.Cover)'
  • If pfx-default-value is included, then it takes precedence over default-value.

Parent Elements

Element Description
control Defines the component's namespace, version and display information.

Example

<property name="myFirstProperty" display-name-key="myFirstProperty_Display_Key"
description-key="myFirstProperty_Desc_Key" of-type="SingleLine.Text" usage="bound" required="true" />

Power Apps component framework manifest schema reference
Power Apps component framework API reference
Power Apps component framework overview