Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Announcing WinUI 3 Preview 3! ✨🎉 #3620

Closed
anawishnoff opened this issue Nov 17, 2020 · 20 comments
Closed

Announcing WinUI 3 Preview 3! ✨🎉 #3620

anawishnoff opened this issue Nov 17, 2020 · 20 comments
Labels
announcement discussion General discussion

Comments

@anawishnoff
Copy link
Contributor

anawishnoff commented Nov 17, 2020

WinUI 3 Preview 3

As mentioned in this morning's App Development Community Standup, we've just released WinUI 3 Preview 3! This release consists of a few key new features, improvements on existing functionality, and bug fixes.

WinUI is going to be released in a series of previews through 2021, when we expect to ship the WinUI 3.0 GA release.

New features in Preview 3

Here are some capabilities that are new since Preview 2:

  • ARM64 Support
  • Drag and drop inside and outside of apps
  • RenderTargetBitmap (currently only XAML content - no SwapChainPanel content)
  • Improvements to our tooling/developer experience:
    • Live Visual Tree, Hot Reload, Live Property Explorer and similar tools
    • Intellisense now working for WinUI 3
  • MRT Core Support
    • This makes apps faster and lighter on startup and provides quicker resource lookup.
  • Custom cursor support
  • Off-thread input
  • New, succinct Grid definition syntax, which was a community-driven feature request. 🎉

Please keep in mind that Preview 3 is still an early release product, and has a number of known issues and limitations that our team will be working on throughout upcoming releases. This preview is not intended for production apps.

Getting started with Preview 3

First, you'll need to set up your dev environment with the appropriate technologies. See our documentation for installation instructions and more information on project types:

Install WinUI 3 Preview 3

We've recently published a whole new suite of API reference documentation for all of the new and lifted WinUI 3 APIs, which you can check out here: WinUI 3 API Reference. Make sure the version selector on the left displays "3.0-preview3".

Also, take a look at the walk-through documentation on building a UWP app with WinUI 3 Preview 3 and building a Desktop app with WinUI 3 Preview 3.

We love feedback! We encourage you to file any bug, big or small, on our repo using this template. Knowing which issues and features are important and/or critical to our customers highly influences which ones we tackle.

For upgrading Preview 2 apps to Preview 3, carefully follow the instructions laid out here.

Using WinUI 3 Preview 3 with our ecosystem partners

Preview 3 is in the process of being integrated into several other important ecosystem technologies. To test out and follow that progress, check out some of our partner technologies below:

  • Windows Community Toolkit (Microsoft): The latest version of the WCT supports Preview 3, and provides tons of new controls and capabilities for use in your WinUI app. You can check out their open source repo here.

  • Uno Platform: Developers using WinUI have an option to take WinUI-built applications to WebAssembly, Linux, macOS, Android and Linux via community-driven open source project Uno Platform. To set up your environment and get started with Uno Platform follow instructions laid out here.

  • Telerik: Telerik UI for WinUI is an early experiment for the UI component suite, targeting WinUI 3 UWP apps. The Telerik UI preview includes several feature-rich controls including Charts, Gauges, DataGrid, and more.

  • SyncFusion: The SyncFusion WinUI controls preview includes a large variety of high performance and modern controls for WinUI 3 UWP apps. The initial preview includes a suite of controls for data visualization, notifications, navigation, and content editing.

  • DevExpress: : The entire suite of DevExpress UWP controls is now available for WinUI 3 UWP apps. Some example controls include Scheduler, chart controls, Navigation, DataGrid, and more.

What's next

To keep up with progress being made on WinUI 3, please see our feature roadmap which gets updated regularly. We also give monthly updates on our WinUI Community Calls, where you can directly ask the team any questions you have.

Issues and workarounds

There have been a few issues identified by our developer community, along with workarounds to solve them. Please take a look at the following before filing a new bug on Preview 3:
#3649 - Setting tooltip using attached method syntax in resw no longer works in WinUI 3 Preview 3
#3635 - Cannot build WinUI3 Preview3 desktop package project in fresh installed VS
#3648 - WinUI3 Preview 3 package misses globbing pattern for PRIResource
#3954 & #3815 - Apps created with WinUI3 Preview 3 will not run on the latest Windows Insider builds

@anawishnoff anawishnoff added hot discussion General discussion labels Nov 17, 2020
@ghost ghost added the needs-triage Issue needs to be triaged by the area owners label Nov 17, 2020
@ranjeshj ranjeshj removed the needs-triage Issue needs to be triaged by the area owners label Nov 17, 2020
@ranjeshj ranjeshj pinned this issue Nov 17, 2020
@robloo
Copy link
Contributor

robloo commented Nov 17, 2020

Great news! When do we get to see the code? (I'll not ask latest timing of WinUI 3.0 as that gets mentioned in almost every community call)

@VagueGit
Copy link

VagueGit commented Nov 18, 2020

Installed VS 2019 preview with Desktop and UWP workloads
Installed vsix for WinUI project templates
Created a WinUI Packaged desktop app
Won't build.

Error	MSB3774	Could not find SDK "Microsoft.VCLibs.Desktop, Version=14.0".	WUI (Package)	C:\Program Files (x86)\Microsoft Visual Studio\2019\Preview\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets	2395	
Error	MSB3774	Could not find SDK "Microsoft.VCLibs, Version=14.0".	WUI (Package)	C:\Program Files (x86)\Microsoft Visual Studio\2019\Preview\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets	2395	

Upgraded Nuget for Microsoft.VCRTForwarders.140 but that didn't help.

@huoyaoyuan
Copy link

huoyaoyuan commented Nov 18, 2020

@VagueGit It successes on one of my machine, and fails on another. I suspect it requires "C++ tools for UWP" workload. Confirming.

Edit: No idea about it. Exporting vsconfig from the working machine doesn't work on the other.

After viewing msbuild log, the working instance will resolve Microsoft.VCLibs from C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs.

@VagueGit
Copy link

@huoyaoyuan I have Windows SDK 10.0.19041.1. In C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs I have Microsoft.VCLibs.Desktop.110 and Microsoft.VCLibs.Desktop.120 but not version 14. Do you know where it comes from?

@huoyaoyuan
Copy link

@VagueGit After trying, Microsoft.VCLibs.Desktop comes with C++ UWP tools workload. But Microsoft.VCLibs still doesn't come. I've confirmed it's not included in minimal C++ desktop workload, nor UCRT SDK.

I have versioned Microsoft.VCLibs.120, Microsoft.VCLibs.Desktop.110, and Microsoft.VCLibs.Desktop.120.

@huoyaoyuan
Copy link

Commenting out the SDKReference in package project works for my application upgraded from Preview 2, but doesn't work for template project.

My project can run, but will fail with Can't find ResourceMap when loading any page with localization.

@anawishnoff
Copy link
Contributor Author

@stevenbrix @alwu-msft any insight on the issues mentioned above?

@stevenbrix
Copy link
Contributor

Many folks have been hitting this issue. For some, doing a repair of their VS install fixed it, for others it didn't.

I will reply back if I learn any more than that.

@roxk
Copy link

roxk commented Nov 18, 2020

Encountered the same issue for my own UWP app. While doing a a repair in visual studio installer fixes the VC lib not found issue, I get the same ResourceMap not found problem as @huoyaoyuan . Here are some relevant logs:

'App.exe' (Win32): Loaded 'C:\Windows\System32\winnsi.dll'. 
D:\a\1\s\dev\MRTCore\mrt\Core\src\MRM.cpp(674)\MRM.dll!00007FFB45BD422B: (caller: 00007FFB65B5A068) ReturnHr(1) tid(4a78) 80073B1F ResourceMap Not Found.
Exception thrown at 0x00007FFBD2953E49 (KernelBase.dll) in App.exe: WinRT originate error - 0x80073B1F : 'ResourceMap Not Found.'.
'App.exe' (Win32): Loaded 'C:\Windows\System32\windows.storage.dll'. 
'App.exe' (Win32): Loaded 'C:\Windows\System32\wldp.dll'. 
Exception thrown at 0x00007FFBD2953E49 in App.exe: Microsoft C++ exception: winrt::hresult_error at memory location 0x000000B1694FA870.

Looks like MRTCore is the culprit?

@evelynwu-msft
Copy link
Contributor

@huoyaoyuan @roxk Would it be possible for you to share the project where you're seeing the "ResourceMap not found" error?

@roxk
Copy link

roxk commented Nov 18, 2020

@alwu-msft It's a private repository for now, just invited you as a collaborator. It's the main branch.

Thanks for the quick response!

Update: Just pushed a commit explicitly about resource map not found. Previous commit would trigger a bunch of ToolTipService.ToolTip error and it's only after removing string resource entries with tooltip can you reproduce the resource not found issue.

@evelynwu-msft
Copy link
Contributor

@roxk The exception is non-fatal and execution can be continued past it. You're seeing it because you specified an x:Uid (on line 58 of MainPage.xaml) that does not have any matching string resources.

@roxk
Copy link

roxk commented Nov 19, 2020

@alwu-msft Thanks! I see 2 points here:

  1. IIRC missing resources would not throw any exception in preview 2, is it an intended new behavior to throw for missing resources? (Not that I am against it, since it safe guards devs)
  2. The reason why those resources are missing is to avoid a bunch of XXX.ToolTipService.ToolTip exception. You should be able to reproduce it in the commit with the message "upgrade to winui 3 preview 3". The immediate commit before upgrading to preview 3 compiles and runs just fine with preview 2. Should I just file a new issue for it if it appears to be a separate issue from the VC lib issues?

Update: The ToolTipService.ToolTip exception is follows:

'App.exe' (Win32): Loaded 'C:\Windows\System32\winnsi.dll'. 
Exception thrown at 0x00007FFBD2953E49 (KernelBase.dll) in App.exe: WinRT originate error - 0x802B000A : 'Unable to resolve property 'ToolTipService/ToolTip' while processing properties for Uid 'RefreshPostsButton'. [Line: 44 Position: 110]'.
Exception thrown at 0x00007FFBD2953E49 in App.exe: Microsoft C++ exception: winrt::hresult_error at memory location 0x000000437B0FB8A8.

@huoyaoyuan
Copy link

@anawishnoff Can you create a highlighted issue for collections of known issues of preview 3?

I've found three (#3635, #3648, #3649). After doing workaround for them, my project is running well.

During the lifetime of preview 2, I've seen several times people creating duplicated issues for the known issues.

And they should be also added to here.

@anawishnoff
Copy link
Contributor Author

Thanks @huoyaoyuan for filing these and finding workarounds! I'll add these issues to this post as it's pinned and the central space to discuss Preview 3.

@smj389
Copy link

smj389 commented Dec 1, 2020

I still experience Issue #2704 in preview 3.

@Gavin-Williams
Copy link

Gavin-Williams commented Dec 3, 2020

I don't see Xaml-less rendering (eg Swapchain from CoreWindow) - are games and custom rendering scenarios not being considered?

@YuliKl YuliKl unpinned this issue Dec 17, 2020
@sigmarsson
Copy link

Infragistics is also engaging WinUI :

https://www.infragistics.com/products/winui

@YuliKl YuliKl pinned this issue Jan 7, 2021
@mrlacey
Copy link
Contributor

mrlacey commented Jan 23, 2021

@anawishnoff please can you update the "Issues and workarounds" section in the OP to include that apps created with WinUI3 Preview 3 will not run on the latest Windows Insider builds. (#3954 & #3815)

@gabbybilka
Copy link
Member

gabbybilka commented Nov 23, 2021

Check out #6325 to see features from this release in Windows App SDK 1.0 and leave any additional comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
announcement discussion General discussion
Projects
None yet
Development

No branches or pull requests

15 participants