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

Discussion: WinUI 3.0 XAML Designer #5917

Open
GeorgeKerwood opened this issue Sep 19, 2021 · 355 comments
Open

Discussion: WinUI 3.0 XAML Designer #5917

GeorgeKerwood opened this issue Sep 19, 2021 · 355 comments
Labels
area-Tooling discussion General discussion product-winui3 WinUI 3 issues team-Markup Issue for the Markup team

Comments

@GeorgeKerwood
Copy link

Please forgive the faux pas if readdressing closed issues is not the "done thing", however with the release of Windows App SDK 1.0.0 I was surprised to still not see any timeline or discussion on this point. With reference to #3656 and #3644, Visual Studio XAML Designer does not support WinUI 3.0.

Respectfully, this is a crippling barrier to entry which for most intents and purposes renders the framework unadoptable.

I would be grateful to hear if there were plans to support graphical xaml design within VS, Blend or equivalent and if so on what timeline? Interim alternatives or "work arounds" would also be very helpful.

Kind Regards

@GeorgeKerwood GeorgeKerwood added the discussion General discussion label Sep 19, 2021
@ghost ghost added the needs-triage Issue needs to be triaged by the area owners label Sep 19, 2021
@kmgallahan
Copy link
Contributor

kmgallahan commented Sep 19, 2021

IMO, Hot Reload and Live Visual Tree are fine - especially considering the effort/hours needed to support a separate designer, while also trying to make any meaningful progress on the ~2100 open issues.

The team also mentioned this is the direction that want to go instead of making a designer, but I can't remember exactly where this was stated.

@Symbai
Copy link

Symbai commented Sep 20, 2021

and if so on what timeline?

In the past they said a designer is not planned for 1.0 and not planned for the near future. At the current broken state of WinUI I would also rather focus them on fixing bugs. I mean you cannot even set a window title without using workarounds 🤦‍♂️

@GeorgeKerwood
Copy link
Author

IMO, Hot Reload and Live Visual Tree are fine.

@kmgallahan I'd be inclined to agree with you however, so far I've found neither to be supported by the "WinUI 3 in UWP" or "WinUI 3 in Desktop" project types provided by the Windows App SDK Extension. I'd imagine you've been succeeding with with WinUI 2 in UWP Apps? Am I missing something? Thanks

@kmgallahan
Copy link
Contributor

kmgallahan commented Sep 20, 2021

@GeorgeKerwood I won't try to identify all the versions and periods of time where Live Visual Tree & Hot Reload have and haven't worked, but as of right now using the latest version of VS 2019 with WindowsAppSDK 1.0.0-preview1 they are both functioning in a WinUI 3 Desktop / Win32 app. That includes hot reload for both XAML and CS (while debugging managed code only).

My point was more to say that since those are the things the team is investing time into, I'm fine with using them going forward.

@GeorgeKerwood
Copy link
Author

@kmgallahan Thank you for the input. Updating to the very latest VS 2019 brought both Hot Reload and LVT to life. I agree that together they serve the graphic design purpose for the interim.

The team also mentioned this is the direction that want to go instead of making a designer, but I can't remember exactly where this was stated.

Personally, I'd still like to see a designer in the long term since I find it a more time efficient way of generating xaml, however I can see both sides.

@StephenLPeters
Copy link
Contributor

@ryandemopoulos FYI

@StephenLPeters StephenLPeters added area-Tooling product-winui3 WinUI 3 issues team-Markup Issue for the Markup team labels Sep 22, 2021
@MEK3DK
Copy link

MEK3DK commented Sep 24, 2021

@kmgallahan Hot reload still has issues in WinUI 3, like this one: #5944

@GeorgeKerwood I agree that in order to enable a large number of developers (especially people who just try WinUI 3 or people who are not proffesional developers) to use WinUI 3 the designer is needed.
However as @Symbai mentions even basic stuff does not work atm so something non-critical is a long way off. You can also not set width and heigth of a window without workarounds :-)

@sonnemaf
Copy link
Contributor

I think not having a Designer in Visual Studio 2022 and Blend for Visual Studio is a big mistake. It will withhold WPF and Windows Forms developers to switch to WinUI3. Having Xaml Hot Reload and Xaml Live Preview is not an alternative. I do 95% of my XAML development (WPF and UWP) in the XAML Code Editor. But I can't live without the 5% I do in the Designer. The productivity loss I will have is enormous. Let me give you a few examples of what I use the designer for and what I can't do in the XAML Code editor. Please implement the Designer for WinUI3 soon. It is even not on the planboard, not even in the backlog. I have submitted a new idea for it. Hopefully it will be picked-up soon so others can upvote it.

Add/Delete/Move Columns and Rows to/from a Grid

In the Designer you can easily Add/Delete/Move Columns and Rows to/from a Grid. If you do so it will update the Column/Row attached properties of all elements inside the Grid. You don't want to do this manually. It is a real productivity boost.

image

It would really be nice if the XAML Designer for UWP would display the RowSpacing and ColumnSpacing properties of a Grid and the Spacing of a StackPanel.

Create Storyboards

You can easily create Storyboards in Blend for Visual Studio using a "recorder". Something you can't do in Visual Studio (which I find stupid). The Objects and Timeline (aka Document Outline Window) has a special '+' button for it.

image

The recorder let's you create KeyFrames and easily select easing functions for it.

image

You don't want to create a storyboard in the XAML Code Editor by hand. A Storyboard is often very large piece of XAML which is very difficult to write by hand, especially the begin and end times of all keyframes.

Visual States

I can easily create Visual States using Blend for Visual Studio. For each Visual State I can add Triggers, Setters and Storyboards. I can even record the Storyboard and use transitions.

image

You don't want to create Visual States in the XAML Code Editor by hand. Especially the ones which have Storyboards. Most of the Visual States in control Templates are still using Storyboards, not the 'new' Setters.

image

Add Behaviors

You can add Behaviors in Blend for Visual Studio using the Assets Window. Something you can't do in Visual Studio (which I find also stupid). You get a visual feedback when a Behavior can or can't be dropped on an element. You can als

image

The Property Window of Visual Studio just doesn't show all properties of an Behavior. For example I can't select the Storyboard for this ControlStoryboardAction. Something I can do in the Designer of Blend.
image

You don't want to add Behaviors in the XAML Code Editor by hand.

XAML Designer Suggested Actions

They work great. They are new. Why abandon them?
image

Edit Template and Additional Templates

Only in the designer you can easily create templates. I don't know how else I would create one. I never do this in the XAML Code Editor.
image

Many small features

Setting the Order, Alignment and Layout (most often Reset All). You don't want to set the z-order manually.
image

Add/Edit Flyouts
image

Show Designer in different resolutions, scaling and orientation
image

XAML Design Time Data
https://docs.microsoft.com/en-us/visualstudio/xaml-tools/xaml-designtime-data?view=vs-2022

@StephenLPeters
Copy link
Contributor

@fabiant3 and @codendone FYI

@jschroedl
Copy link

I'm with @sonnemaf on this one. I use Blend for adding Behaviors, cloning and customizing themes and templates for controls. I would also want to manage visual states if WinUI has those. So much of what I know now re: WPF has come via the designer and blend. I would make changes and look at what happened to the XAML. I am planning the approach for migrating a WPF-based application to WinUI and had expected that there would be designer and/or Blend support for that XAML as well. It's a shock that it's not there.

XAML hot reload does not work for my app btw as it contains some C++/CLI code for interop with a large body of native code. The hot reload does not work with my project because of the lack of support for /clr code. ie. Edit and Continue is not supported for my project.

@BarcodeResource
Copy link

Our team is porting an existing UWP app to WinUI3 targeting Windows 11. We definitely appreciate having Blend support as soon a possible. The rounded corner elements in Windows 11 do require us to make quite some adjustments to the element Styles, specifically the the Blend -> Element -> Edit Template -> Edit a Copy capabilities.

@mdtauk
Copy link
Contributor

mdtauk commented Nov 23, 2021

Microsoft should look to its Android Studio and XCode contemporaries, with Android, iOS, and macOS designers for good UI designers/previewers - rather than to what is currently provided to UWP/WPF/WinForms.

There is a rich surface here that could be made more designer friendly, Via Blend - which can be handed off to the code teams in Visual Studio.

@sonnemaf
Copy link
Contributor

Microsoft should look to its Android Studio and XCode contemporaries, with Android, iOS, and macOS designers for good UI designers/previewers - rather than to what is currently provided to UWP/WPF/WinForms.

There is a rich surface here that could be made more designer friendly, Via Blend - which can be handed off to the code teams in Visual Studio.

A designer with better features would be perfect. But also take more time. Maybe give us first the UWP designer and then add features to it.

@HEIC-to-JPEG-Dev
Copy link

I'd add that hot reload and live visual tree are not a replacement as they require the app to be compiled, launchable. If I'm working on an app, I have to ensure all code compiles and the app launches to be able to use the XAML live preview. I don't want to have to wait for other paths to be completed first. The "you have to wait for the backend code to be completed before you can build the view" is not a good experience.

@devdelimited
Copy link

IMO, while the Hot Reload and Live Preview make for flashy demos, they are nice-to-haves. The Designer is a MUST HAVE.

@HydrogenC
Copy link

Yep. A designer is crucial for creating control templates or story boards, as well as setting properties. It is a MUST unless a better alternative for these shows up. Besides, having no xaml designer makes Blend for Visual Studio a useless application.

@sunsewingmachine
Copy link

sunsewingmachine commented Dec 10, 2021

I am really unable to believe that this is a bug. XAML Designer is an essential part of app development. Still couldn't believe it. Is it a bug or intended behavior? If it is a bug, how can we developers trust the other functionalities of WinUI 3? Please show us a clear path, UWP or WinUI, or something else?

@kmgallahan
Copy link
Contributor

I am really unable to believe that this is a bug.

Who said not spending the time to create a tool was a bug? They've clearly stated on multiple occasions that they are investing in Hot Reload over a dedicated designer at this time.

Please show us a clear path, UWP or WinUI, or something else?

microsoft/WindowsAppSDK#1615

@sunsewingmachine
Copy link

sunsewingmachine commented Dec 14, 2021

They've clearly stated on multiple occasions that they are investing in Hot Reload over a dedicated designer at this time.

Okay. I agree, sorry for my misunderstanding. Though, we do love to have a designer for the same reasons others have mentioned.

@tuggernuts
Copy link

IMO, while the Hot Reload and Live Preview make for flashy demos, they are nice-to-haves. The Designer is a MUST HAVE.

Can't agree with this more. Hot Reload is great when I'm fine tuning the design. But from a blank page? Designer is how things get built. Unbelievable that this UI was released without one.

@calloncampbell
Copy link

I've developed in WinForms, WPF and UWP and I'm finding it hard to jump into WinUI 3. This is supposed to be the next generation UI framework and at every step, there seems to be something missing...no designer, lack of demos, sparse docs and even the launch was non-eventful. I want WinUI to succeed but right now it's still very much a "preview".

Hot Reload is nice when it works but I'm curious why the designer in VS and Blend could not be updated to support WinUI when it's done so since WPF. It feels like the design-time experience has been dumbed down.

@Rybasum
Copy link

Rybasum commented Dec 23, 2021

I write 100% of XAML by hand, but I very much need to see the result rendered somewhere as I type, before running the app! (yes, live preview is great, thank you). Please, give us even a rudimentary initial version of Designer that just renders my XAML.

@nick-911
Copy link

I wanted to create a new app and jump onto WinUI; but no designer is just plain crazy.
ok, it can be learned and probably will get used to it more or less but it's much more productive to design a complex ui in a visual designer than having to edit the xaml the whole time. :-(
Adding a window with just a textbox and button, so far that will be easy and no issue but real-world applications don't have 2 basic controls on them!

And this isn't a bug but just a basic requirement.

@nikolayvpavlov
Copy link

After Skype, Microsoft are repeating the exercise with Outlook. Instead of relying on WASDK to create a native, high quality and high performing app with stellar modern UX, they are doing a web client that at present is so pathetic that I don't even want to start complaining about it.

These choices have a devastating impact on development community.

@soroshsabz
Copy link

@nikolayvpavlov I totally agree with you, I do not know, why Microsoft does not have any consistent and powerful strategy to support Microsoft's framework even within his own company!!!

Web multiplatform solution is very poor performance, and it is not having any native experience in Windows (and in another Platform)

@mdtauk
Copy link
Contributor

mdtauk commented Sep 19, 2023

I think Microsoft is convinced there is no longer a big enough market for native Windows dev, to invest much into providing good designing tooling.

Web seems to be Microsoft's primary platform, and so they treat XAML as you would treat HTML, so preview in browser.

As for apps like Skype and Outlook - these are now cross platform and online first applications, so their focus is to focus on the web interface, and then adapt as PWAs for native platforms.

The real balance will be about chickens and eggs. If they did invest in Windows Native app dev and UX design tools - would it increase the amount of developing happening? Or should they reflect the landscape as it is, because they have already decided that there is no more growth there.

@NotAsea
Copy link

NotAsea commented Oct 20, 2023

I think some root problem are within WinRT, Win32, and even Visual Studio itself, you see WinRT still has ton of Bug, App Packaging still getting nowhere, Visual Studio still stuck at Net Framework with no proof migrating to modern .NET, and let not forget their Offices suit app, even Microsoft themselves invest heavier and heavier to Cloud, i see Window Native Developers like us are slowly being thrown to trash by Microsoft. Well i guess Linux guy can laugh at us and call us a bunch of clowns at this point, and worse, Qt Toolkit or even GNOME are even better option than the horrible mess WinRT we stuck at right now, Look back to the past, beside we have great tool WPF, a decent one UWP, they've already killed bunch of so call "native ui", i'm not even surprised if they go full OS as Browser Engine like ChromeOS

@MCAleckson
Copy link

Sitting here for hours today in a complex XAML page with complex databindings - and no XAML design view or previewer.

Everything takes 10x the time without the simple ability to preview the stinking page. So frustrated.

@keytrap-x86
Copy link

Thousands of comments everywhere on internet and 99% agree that we need to have the Designer back.
Now Microsoft needs to respond to this overwhelming feedback and consider rehiring the Designer or implementing their vision to satisfy the user community.

@llothar
Copy link

llothar commented Nov 15, 2023

even Microsoft themselves invest heavier and heavier to Cloud, i see Window Native Developers like us are slowly b

And nobody likes this, the new Outlook is simply illegal to use in almost all EU companies as they not conform to the GDPR. So no real replacement as much as greedy Microsoft wants it to happen.

@CAKCy
Copy link

CAKCy commented Nov 15, 2023

@keytrap-x86 , @llothar if you haven't, please upvote:

https://developercommunity.visualstudio.com/t/Feature-request-Visual-designer-for-Wi/1608476?q=WinUI+Designer

It's the thread Microsoft monitors for user requests for a XAML Designer.
Thanks!

@Marren85
Copy link

Marren85 commented Nov 30, 2023

I'm assuming this is now sorted as we've passed the two year anniversary of this issue being opened and the community has made its thoughts clear.......

@megabytesme
Copy link

Just liked and commented on that post. Guess I'll make my new app as a UWP app instead... 🙃

I really can't be asked to deal with all the UI elements myself when there is other better ways...

@MCAleckson
Copy link

Sitting here, AGAIN, for hours today in a complex XAML page with complex databindings - and no XAML design view or previewer so I have to:

  • build the app
  • execute cloud login with UID and PW
  • navigate to the screen
  • examine the effects of the XAML change
  • lather, rinse, repeat.
  • then:
  • deeply desire to change vocations, perhaps buy some land and become a farmer.

Everything takes 20x the time without the simple ability to preview the stinking XAML page without invoking the build cycle.


Still
so
frustrated.

@gsonnenf
Copy link

Its unfortunate that I've pretty much abandoned any premise of using WinUI 3.0. Slow response to community need will ensure the platform does not reach critical mass for community adoption of technology.

@MCAleckson
Copy link

Aaaaand, here's yet another day 87% wasted on build/login/navigate/lather/rinse/repeat cycles because Microsoft has removed any ability to visually preview a UI from Microsoft Visual Studio.

Happy New Year y'all!

@soroshsabz
Copy link

@craigloewen-msft Any update?

How many votes and comments needed to start this issue?

@Marren85
Copy link

Marren85 commented Jan 9, 2024

The real question is will WinUI 4 have a design view?!? This is the most commented issue for the SDK and is basically ignored as the elephant in the room

@Jimbo99
Copy link

Jimbo99 commented Jan 9, 2024

The real question is will WinUI 4 have a design view?!?

Do we know, is WinUI 4 confirmed, or has it even been mentioned by anyone at MS? I would be happy if so; I'm not feeling at all secure developing wth WinUI 3 currently (having been burned by UWP).

@jp-weber
Copy link
Contributor

jp-weber commented Jan 9, 2024

Aaaaand, here's yet another day 87% wasted on build/login/navigate/lather/rinse/repeat cycles because Microsoft has removed any ability to visually preview a UI from Microsoft Visual Studio.

I don't understand why you do this to yourself and don't use something that meets your requirements? For me, this is one of the reasons why I won't be using WinUI3 and will rely on UWP instead.

@MCAleckson
Copy link

jp-weber, there's a few reasons, but one big one is I'd have to rewrite 4 years of my team's code to convert to something else. UWP won't do the trick for my huge codebase to migrate to. And as well various components I've used for years work/don't work in a multiplatform environment (IOS/Android/WASM).

It's a mess. But I agree with you in this point - if it was a green field for me today, there's no way I'd go WinUI/VS.

@Marren85
Copy link

Marren85 commented Jan 9, 2024

The real question is will WinUI 4 have a design view?!?

Do we know, is WinUI 4 confirmed, or has it even been mentioned by anyone at MS? I would be happy if so; I'm not feeling at all secure developing wth WinUI 3 currently (having been burned by UWP).

I've not seen anything mentioned but we are getting towards next version time. I cant believe how big a let down this has been. In the past there were regular community calls every month or since 2020 yet there hasn't been one for 6 months I believe, everything I see says WinUI isn't in active development and MS have given up on it due to the massive errors in judgement.

@soroshsabz
Copy link

soroshsabz commented Jan 11, 2024

@soroshsabz
Copy link

@maddymontaquila Did you see this issue and community comments?

@SongOfYouth
Copy link

What i really need is a solution like designer host in winform, so i can do some awesome thing with low/no code.

@ChefAndy
Copy link

Jeez... This nearly guarantees that WinUI 3 applications will consistently have the most poorly designed UIs of any serious modern native UI framework. Usability is already considered overhead in many projects; teams that could have spent their time making their UIs decent will now spend all of that time making them basically functional.

@xperiandri
Copy link

Hot Reload does not work. That is crazy!!!

@xmaxrayx
Copy link

xmaxrayx commented Jul 7, 2024

why people recommend this framework when it looks for nerd who are ok press 1000 times reload button to make sure everything fit? most unenjoyably thing.

@xmaxrayx
Copy link

xmaxrayx commented Jul 7, 2024

Ok I found you can use xaml live future better than nothing.

devenv_SKdYLhJC4w

@Jay-o-Way
Copy link
Contributor

you can use xaml live future

Looks nice, need to check that 😀

@BTBLF
Copy link

BTBLF commented Jul 15, 2024

There is a table here https://learn.microsoft.com/en-au/windows/apps/get-started shows which is supported:
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-Tooling discussion General discussion product-winui3 WinUI 3 issues team-Markup Issue for the Markup team
Projects
None yet
Development

No branches or pull requests