A Microsoft platform for building and publishing apps for Windows devices.
Hi @Hong ,
Thank you for the clarification and for sharing the project file — that helps a lot.
From what is visible in your screenshot, here is how I would approach it:
Most of what you're seeing can go
- Both Import statements — Microsoft.Common.props at the top of the file and Microsoft.Windows.UI.Xaml.CSharp.targets near the bottom. The SDK brings these in itself, and leaving them will cause conflicts.
- All the per-configuration blocks (Debug and Release across x86, x64, ARM): OutputPath, DebugType, DebugSymbols, ErrorReport, Prefer32Bit, UseVSHostingProcess. The SDK has sensible defaults for each of these. One caveat — these blocks also hold your DefineConstants, so note those down before deleting. If your code has #if conditions relying on them, you'll want to confirm they still resolve on the new target framework.
- Any ItemGroup that simply lists your .cs files, XAML pages or image assets by name — those are picked up automatically now.
What's specific to your app is worth carrying over
- PackageReference entries, updated to Native AOT–compatible versions. If you're still on packages.config, bring across only the direct references; transitive ones resolve on their own.
- ProjectReference entries.
- Files with a non-default build action, or anything using CopyToOutputDirectory.
- Your app identity and AppxManifest-related configuration.
One suggestion worth considering: Visual Studio 2026 includes templates for modern UWP apps, and starting fresh then copying your source and assets over is often less painful than editing the old file down — if the build breaks, you know it's your code rather than a leftover setting. Editing in place keeps your git history, so either approach is fine.
Either way, please back up first and rebuild after each chunk of changes rather than all at once.
Happy to go through it line by line if you paste the full .csproj as text with anything sensitive removed.