RobElliott's approach is the cleanest UX pattern. To add the specific implementation:
Set the Next button's DisplayMode property to:
If(
IsBlank(DataCardValue1.Text) || IsBlank(DataCardValue2.Text),
DisplayMode.Disabled,
DisplayMode.Edit
)
Replace DataCardValue1, DataCardValue2 etc with your actual required field names.
If you want to keep the button enabled but show validation errors on click instead (like SubmitForm does), the confirmed approach is:
1. Set a variable on the Next button OnSelect:
Set(varScreen1Submitted, true);;
If(Form1.Valid, Navigate(Screen2), false)
2. Set each required DataCard's Error property to show when the variable is true and the field is blank:
If(And(varScreen1Submitted, IsBlank(DataCardValue1.Text)), "This field is required", "")
The form's built-in required validation only triggers on SubmitForm, so you need to replicate the error display manually for intermediate screens. The disabled button approach from RobElliott is simpler and the better UX since users can see upfront what's missing.
Best regards,
Valantis
✅ If this helped solve your issue, please Accept as Solution so others can find it quickly.
❤️ If it didn’t fully solve it but was still useful, please click “Yes” on “Was this reply helpful?” or leave a Like :).
🏷️ For follow-ups @Valantis.
📝 https://valantisond365.com/