If you've ever opened a canvas app that works but looks dated, feels awkward on a phone, or needs hours of control-by-control styling, replacing everything with modern controls can sound like the obvious fix.
It usually is not.
Microsoft's current guidance supports using modern controls and themes, but it does not say that every classic control in every canvas app is deprecated. Classic and modern forms are both supported, and Microsoft also warns that only part of the wider modern-control set is generally available while other capabilities remain in preview.
The practical answer is to modernise for a reason—better theming, responsive layout, accessibility or maintainability—and test the change one screen at a time.
The short answer
Use modern controls when you are building a new screen or when a modern equivalent fixes a specific problem in an existing app.
Do not replace a stable production app control by control merely to make it “modern.” A replacement can change properties, behaviour, layout and formulas. Treat it as an app change that needs testing, not as a visual reskin.
One important distinction: Microsoft has deprecated the older Fluent UI v8 controls used in canvas apps inside Microsoft Teams and in custom pages for model-driven apps. That is narrower than saying all classic canvas controls are deprecated.
Decide what to change
| Situation | Recommended move |
|---|---|
| You are starting a new canvas app | Start with modern controls and a modern theme where the controls you need are suitable for production. |
| An existing app works and users are happy | Leave stable controls alone unless you have a clear accessibility, layout, performance or maintenance reason to change them. |
| Styling is inconsistent across screens | Test a modern theme and a small set of modern controls on one representative screen. |
| The app breaks on phones or resized browser windows | Fix the responsive layout with horizontal and vertical containers; changing the visual control alone will not make the screen responsive. |
| A form is difficult to maintain | Test the modern Form control. It uses the same form model and familiar functions, but provides updated styling, responsive spacing and accessibility defaults. |
| The app uses deprecated Fluent UI v8 controls in Teams or a model-driven custom page | Use Microsoft's supported upgrade route and inspect every mapped property after conversion. |
| A required modern control is still preview or lacks a property you rely on | Keep the working classic control and record the reason. Revisit it when the modern equivalent meets your requirements. |
A safe modernisation path
1. Pick one real problem
Choose a screen where users already experience something concrete:
- navigation is confusing
- spacing or colours are inconsistent
- the form is hard to use on a smaller screen
- keyboard or screen-reader order is unclear
- maintaining repeated styling takes too long
Write down the current behaviour before changing anything. If you cannot name the problem the replacement will solve, there is no reason to accept the migration risk yet.
Work in a copy or controlled test version of the app rather than experimenting in the version people currently use.
2. Enable modern controls and themes
With the canvas app open for editing:
- Select Settings on the command bar.
- Open Updates.
- Select New.
- Turn on Modern controls and themes.
The app refreshes and modern controls appear in the normal Insert categories. Modern themes become available from the Themes pane.
Apply one theme before manually changing individual colours. The value of modern theming is that colour, typography, borders and related styling can be managed centrally. If you immediately override every control, you recreate the maintenance problem you were trying to remove.
3. Replace controls selectively
Start with controls where the benefit is visible and the behaviour is easy to test, such as navigation, information prompts or a form on the chosen screen.
Do not assume every old property has a direct modern equivalent. Microsoft's upgrade guidance for Fluent UI v8 controls explicitly notes that some hover, pressed, disabled-state and focus-outline styling does not map across. Review formulas and properties after each replacement.
For a form, the modern Form control retains the familiar model:
- DataSource identifies the source.
- Item identifies the record.
- DefaultMode controls New, Edit or View behaviour.
- NewForm, EditForm, ViewForm, SubmitForm and ResetForm continue to apply.
That makes a form a sensible candidate for a controlled test, but it is still necessary to check required fields, validation messages, success and failure behaviour, and any formulas that refer to child cards or controls.
4. Fix the layout, not just the appearance
Modern controls can improve responsive sizing, but the screen still needs a responsive structure.
Use horizontal and vertical containers for logically related controls. Containers are real layout controls, can be nested and help screen-reader users understand the structure. Ordinary groups are useful while editing, but they are not part of the app's logical accessibility structure.
For a truly responsive canvas app, Microsoft recommends turning off Scale to fit, using containers and testing different screen sizes and orientations. Do this carefully on an existing app because changing the setting can expose assumptions in formulas that use fixed X, Y, Width or Height values.
Check that controls follow a logical visual order from left to right and top to bottom. Screen-reader and keyboard navigation follows that structure. Do not try to repair a poor structure with positive custom TabIndex values; Microsoft has retired that pattern.
5. Keep forms and galleries predictable
For forms:
- group related fields into clear sections
- use familiar field labels
- show which fields are required
- validate formats such as email addresses where appropriate
- keep one form manageable, or divide a long process into meaningful screens, steps or tabs
- reuse New, Edit and View modes when one form can safely handle all three jobs
For galleries:
- retrieve and display only the columns you need
- avoid nested galleries where a simpler structure will work
- do not change a gallery's Items from events inside its child controls
- do not assume AllItems contains the complete dataset
- test updates with realistic record volumes rather than a handful of sample rows
Modern controls can reduce some common gallery event problems, but they do not remove delegation limits, data-source constraints or the need to test with real data.
6. Test the result before extending it
A modernised screen is ready to copy across the app only when it passes all of these checks:
- the screen works at desktop, tablet and phone widths that your users actually use
- New, Edit, View, Save, Cancel and error paths still behave correctly
- keyboard navigation follows a sensible order
- input controls have meaningful accessible labels
- the Power Apps Accessibility Checker has been run and its findings reviewed
- text and controls remain readable at the required contrast
- galleries and forms have been tested with realistic data volumes and permissions
- users can complete the same task without extra clicks or missing information
- no required property or behaviour was lost during replacement
If one of these fails, keep the working control, document the gap and try again in the test version. “Modern” is not a sufficient reason to make a production app worse.
What about Power Apps vibe?
The Power Apps vibe experience at vibe.powerapps.com can generate a new app, plan and data model from a natural-language description. Microsoft currently labels it as preview and states that preview features are not intended for production use.
Use it to explore a new app or prototype an alternative design. Do not treat it as an automatic migration tool for an existing canvas app: Microsoft's documentation describes generating and refining a new app, not converting an established app with all its formulas, permissions and production behaviour intact.
If you try it, review the generated plan, data model, code, permissions and responsive behaviour before deciding whether any part belongs in a production solution.
Your next move
Choose the most troublesome screen in your existing app and run this small test:
- Save a controlled copy.
- Record the user task and current pass/fail behaviour.
- Enable modern controls and themes.
- Apply one modern theme.
- Replace only the controls needed to solve that screen's problem.
- Put logically related controls into responsive containers.
- Run the functional, mobile, keyboard and accessibility checks above.
- Keep the change only if the screen is measurably easier to use or maintain.
That gives you evidence from your own app before you commit to a wider migration.
Evidence notes
Microsoft Learn supports these conclusions:
- Modern controls and themes are based on Fluent 2 and can improve theming, usability, performance and accessibility compared with classic alternatives.
- The wider modern-control set is still mixed: some controls are generally available and others remain preview.
- Classic and modern Form controls are both supported.
- Containers improve responsive layout and logical structure for screen readers; groups do not provide that accessibility structure.
- Accessibility still requires labels, logical order, keyboard testing, contrast checks and use of the Accessibility Checker. Modern controls do not certify the completed app as accessible.
- The documented Fluent UI v8 deprecation applies to canvas apps in Teams and custom pages in model-driven apps.
- Power Apps vibe is currently preview and should be treated as an experiment or prototype path, not evidence that an existing app can be migrated safely.
Microsoft documentation explains product behaviour and recommended design practices. It cannot prove that a particular control replacement is safe for your formulas, connectors, permissions, data volumes or users. Your tested copy of the app supplies that evidence.
Source note
Briefing published by Collab365 Spaces, reviewed by Helen Jones on . Cite as "Should I replace classic controls in my existing Power Apps canvas app?", Collab365 Spaces. 9 sources referenced.