C++ GUI: Modern UI/UX with WinUI3 + C++/WinRT | Sciber

preview_player
Показать описание
Today I will show you how to make a Modern Native Windows 10 (Windows 11 even) style Desktop App, not a UWP App!

Note: Please check the pinned comment for any updates!

For this, we are going to use the WinUI 3 Framework and C++/WinRT language projection. We will set up our environment by installing Visual Studio 2022 and installing the correct workloads. Create a new project and start coding!

I will also show you how to package your app to deploy by sideloading to other computers. Currently, you cannot deploy WinUI 3 apps without packaging, because the feature is under development and not ready for production use.

We will generate an MSIX file that can be sideloaded to a Windows 10 or 11 PC.

This video is aimed at beginners, if I'm too slow, feel free to watch at your own pace by increasing playback speed.

We will use XAML to build the UI. If you are coming from a C# WPF background this will be very familiar to you and you can build WinUI 3 apps with C# too.

We will make a simple Calculator that can add/subtract/multiply/divide 2 given numbers and display the result.

------------------------------------------------------

Other links for further research on C++/WinRT and WinUI:

YouTube Vids:

------------------------------------------------------

Feel free to leave any suggestions or corrections in the comments section. Constructive criticism is always accepted.

Рекомендации по теме
Комментарии
Автор

The new visual studio 2022 installer does not have "Individual Components" on the right and when you use the top menu, windows SDK App is o longer there. So I presume this video is now obsolete? Can somebody supply a workaround?

NoFaithNoPain
Автор

Please make this a full series alongside winforms you motivated me to start making GUI programs and not just CLI. Honestly the best programming channel on YT right now imo

jono_owa
Автор

This was such an amazing video. Please make more videos on WinUI and C++/WinRT native app development on Windows. I really liked your explanation about all the h_strings and all. And seriously the last part of packaging the app and generating MSIX bundle that you just showed so clearly was way much helpful as most people will just code and don't explain you the packaging part. This was really a complete tutorial on desktop app development using C++/WinRT. Really looking forward for more such videos on this channel. Keep up the great work. ☺👍

SauravKumar-vjks
Автор

This video is so good, I would like to see more video like this. We really need more example and tutorial of C++/WinRT because it is hard to find related information on internet.

honwicong
Автор

Great video and narrative. Listened and enjoyed the video. Thank you for your contribution! Hope to see more of your videos. Cheers!

ozanyasindogan
Автор

I just want Microsoft to make their win32 GUI API look from this century...

thatcrockpot
Автор

Very well this tutorial on native programming WinUI3 + C++/WinRT.
We are waiting for other videos from the same playlist with the use of other controls.
Just one observation: correct the frame, zooming more on the code to improve readability .

sergioferrari
Автор

Thanks man! Great Video! All I need to get going!

brunokempf
Автор

This was amazing! Could you please make a complete series showing how to make some intermediate-level applications with help of topics like MVVM architecture, and Dependency Injection, how to make API calls, and things like that? 🌟

It would be amazing since there are not many straightforward resources for the beginners to learn about Windows app development with WinUI3 from scratch.

SS-owww
Автор

thank you bro it was very helpful for me, keep it up

silentdeveloper
Автор

Thanks a lot, this is what I was expecting

innocentvictory
Автор

Thank you for the informative video. I had high hopes for WinUI 3 when I first learned about this project. I expected that this would be a serious rival to Qt. But this seems more like a replacement for WPF. The most disappointing thing about this are mandatory certificates. I am not going to fall into the traps of Microsoft's greed.

faustasazuolasbagdonas
Автор

You have explained things perfectly, no offense at all and thank you very much. I've been developing for 15+ years for a living and GUI things become more and more stupid every year. WHY ON EARTH the desktop app. development has become so cumbersome. I mean we had quite powerful RAD tools at almost stone age such as VCL C++, Delphi, even VB . Than we had to move on with uncompiled C# dotnet, Java, python etc. Sorry but the only viable option today as a desktop development is QT. That's it... Use it for machine vision, audio processing, or for whatever you are doing. I wish QT group grasp RUST in the future. CONCLUSION: People want to have a free compiled Rad tool.

Omer-ripn
Автор

Thank you so much. I learned C++ in school and I wanted to write some windows desktop programs, but I didn't want to learn QT and I didn't want to switch to C#, so this came along at the perfect time. Please make this a series.
One question: when I was naming the textboxes, I accidentally left the x: off of the Name property, and it still worked. Is this something that will mess up a larger program, or is the x: optional?

brockk
Автор

Thanks, i bookmarked it. Not enough C++/WinUI3 videos or blog posts out there.

llothar
Автор

Nice 👍🏻 please do more video c++ I love it

Awwe
Автор

NumberBox with AllowExpression >>>

betapacket
Автор

I am Glad To See You Creating New Contents in your Channel.
Would you prefer C++/CLI or WinRT ?
Have You Key For VS 2022? 2019 keys doesn't work now... (

wamisoltanov
Автор

i had some hope for WinUI3 with c++, but thanks to your video, i can see that it's pretty much unusable.

androth
Автор

I'm new to C++ and this is a fantastic tutorial, thank you for taking the time!

One thing I'd like to be able to do is to capture the input/result then drop it into a .txt file once it has been submitted. I've tried the following method in the console, which works, but I'm clearly not experienced enough for this environment. Any pointers?

string filename("tmp.txt");
ofstream file_out;
file_out.open(filename, std::ios_base::app);
file_out << "Some random text to append." << endl;
file_out.close();

dustinthomason