Hello asafweis,
To achieve the behavior you described, I recommend using a variable (either global or local) to manage the default and user-overwritten values. Here's how you can do it:
1. Initialize the Variable:
When the form is opened, initialize the variable with the default values. For example:
Set(varDefaults, {Field1: "Default1", Field2: "Default2"});
2. Update Property of the Data Card:
Use the Update property to build a condition that determines whether to save the default or user-overwritten value. For example:
If(DataCardValue1.Text = varDefaults.Field1, DefaultValue, DataCardValue1.Text)
Since named variables automatically update, ensure they do not directly bind to the Default property of the field. Instead, use a variable or logic like this:
To reset the values to their defaults, you can reinitialize the variable and reset the form using:
Set(varDefaults, {Field1: "Default1", Field2: "Default2"});
ResetForm(EditForm1);