Power Apps forms often become complex when they involve multiple data sources, conditional editing rules, reset logic, and SharePoint Integration components. Two functions that repeatedly cause confusion are:
Defaults()— used when creating new recordsParent.Default— used for binding controls inside forms
1. What is Defaults()?
Defaults() returns a blank template record with all fields initialized according to the data source.
We can use Defaults() when:
Creating a new record
Resetting a form
Clearing previous values when switching items
Defaults(DataSourceName)This initializes an empty Feedback item with the correct schema.
1.1. Defaults() in Edit Forms
When you set a form’s Item property:
If(
SharePointForm1.Mode = FormMode.New,
Defaults(Feedback),
SharePointIntegration.Selected
)This ensures:
New Mode → loads an empty template
Edit Mode → loads real item
2. What is Parent.Default?
Parent.Default represents the value coming from the form (the parent control) to the control.
For example, for a TextInput inside a Form:
Default = Parent.DefaultChoice Column
DefaultSelectedItems =
If(
IsBlank(Parent.Default),
Blank(),
[ Parent.Default ]
)Note: Why we get wrong values in choice column?
When switching between list items:
Controls show old values
Radio buttons don’t refresh
Choice fields show outdated selection
Why It Happens?
Because the control uses:
Default=Parent.DefaultBut Power Apps does not automatically reset controls when the parent item changes
Example problematic scenario:
RadioInput.Default = Parent.DefaultWhen item changes → Radio keeps old value (cached), unless Reset is triggered.
3. How to Force Controls to Refresh When Item Changes
To ensure controls reset every time the user selects a different SharePoint item:
3.1 Use a Reset Variable
Inside OnEdit / OnNew / OnView of SharePointIntegration:
Set(varResetControls, true);
Set(varResetControls, false);Control’s Reset property:
Reset = varResetControls3.2 Dynamic Default Logic
Example for radio button:
Default =
If(
SharePointForm1.Mode = FormMode.New,
Blank(),
Parent.Default
)This ensures:
In New Mode, it is empty
In Edit/View Mode, shows actual value
4. Correct Patterns for Choice & Boolean Fields
4.1 Choice Column (Radio/Dropdown)
Default for Dropdown
DefaultSelectedItems =
If(
IsBlank(Parent.Default),
Blank(),
[ Parent.Default ]
)Reset Behavior
Reset = varResetControlsDisplayMode Logic Example
DisplayMode =
If(
SharePointForm1.Mode = FormMode.View,
DisplayMode.View,
DisplayMode.Edit
)4.2 Yes/No (Boolean) Fields
Default = Parent.Default // TRUE / FALSE
Reset = varResetControlsConclusion
Why Parent.Default is Gold for Editable Forms?
Parent.Default will always respect:
Form mode
Data source
Initial values
Reset
And it ensures the control is in sync with the form.

Join the conversation! Your thoughts help the community grow.