A developer is configuring the manifest of a code component that will be placed on a text column in a model-driven form. The component must display the column's current value and write the user's edits back to that same column. How should the property be declared?
Select an answer to reveal the explanation.
Short Explanation
Bound means a two-way street: the column's value comes in and your edits go back out. Input is one-way traffic into the component, and output is one-way out, so you'd only get half the trip.
Full Explanation
Each property in a code component's manifest declares a usage. A bound property is attached to a column on the form, or to a value in a canvas app; the framework supplies the column's value through context.parameters, and values the component returns from getOutputs after notifyOutputChanged are written back to that column. The of-type attribute, or of-type-group, constrains which column types the property can be bound to, so the form designer only offers the component for compatible columns. An input property is read-only from the component's point of view: it can receive a static value or a column value configured in the designer, but changes returned by the component are not written back to it. An output property is used to expose values from the component to the host, which is relevant in canvas apps, and it does not read the column's value. A data-set element binds the component to a view or subgrid of records and makes it a dataset component, which is a different kind of component than a field control on a single column. Exam caveat: one component can declare several properties with different usages, for example a bound value and input properties for configuration. Operational check: add the component to the column in the form designer, edit the value in the component, save, and confirm the column holds the edited value.