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

Winforms like designer with optional hot reload xaml window #3439

Open
Shadowblitz16 opened this issue Nov 17, 2021 · 93 comments
Open

Winforms like designer with optional hot reload xaml window #3439

Shadowblitz16 opened this issue Nov 17, 2021 · 93 comments
Labels
area-tooling XAML & C# Hot Reload, XAML Editor, Live Visual Tree, Live Preview, Debugging proposal/open

Comments

@Shadowblitz16
Copy link

Shadowblitz16 commented Nov 17, 2021

Description

Can we have a winforms like designer for maui for vs and vs code?
Winforms has one of the best drag and drop designers that Microsoft has ever produced.
Only being compared to something like vb6.

Of course we would need a live xaml editor with hot reload but both the xaml editor and the forms designer should be closable for small single monitor work spaces.

Public API Changes

It doesn't really need any public api changes as far as I know.
Its more of a visual designer suggestion.

Intended Use-Case

Rapid prototyping and development for both xaml and winform developers .

@jsuarezruiz jsuarezruiz added this to Under consideration in Enhancements Nov 18, 2021
@Eilon Eilon added the area-xaml XAML, CSS, Triggers, Behaviors label Nov 18, 2021
@XeonG

This comment has been minimized.

@davepruitt
Copy link

Rather than a winforms-like drag-and-drop designer, I would prefer just a simple XAML previewer/designer like they used to have for Xamarin Forms and like they still have for WPF.

I have no clue why they removed the Xamarin Forms XAML previewer, because its' removal has seriously hampered UI design. See this Xamarin Forms issue here: xamarin/Xamarin.Forms#14170

Hot-reload and "live previewer" are no substitute for a good design-time previewer, because they require the application to be running.

@MagicAndre1981
Copy link
Contributor

I still prefer a winforms-like drag-and-drop designer, I hate this XAML only "design" way. I spend most time trying to make the UI look somehow useable. And the hotreload thing is an ugly workaround which never really works for me.

@pieckenst
Copy link

Yeah a xaml drag and drop designer would be a thing good to have , and make designing application ui simpler and more intuitive

@davepruitt
Copy link

Similar issues continue to get raised, but Microsoft keeps closing them:

#6782
#8610

@GuildOfCalamity
Copy link

How the hell does WinForms, WPF & UWP have a real-time designer and MAUI somehow does not?????
Is there no QA process at MS anymore? How could you ship VS2022 and not make sure this works... the designer was kind of buggy in VS2019 but I thought it would be completely improved by VS2022.

@dazlab
Copy link

dazlab commented Jul 20, 2022

Removing the XAML Designer and telling people to use Hot Reload is a major fail. You can only make minor changes before having to rebuild and re-deploy in Hot Reload. It's an absolute nightmare. In the Out-of-the-Box default MAUI app I tried adding an extra button and it wanted a rebuild, which took over 1 minute. This is your solution? Having to do this every time you make a small tweak to the design is not productive.

Tools like Basic4Android allow you to connect to a device and move elements ON THE DEVICE during the design phase, and has had this for years. The Xamarin XAML Designer was fairly buggy, true, but this is a huge step backwards.

Why, oh why, do M$ keep making these schoolboy errors. One step forward and three back.

@Steven-L-42
Copy link

Steven-L-42 commented Jul 31, 2022

Hope MAUI is going to have this again.
Otherwise i cant understand the big step back.

I think Flutterflow is going to show us how this can work.
Also WinForms or WPF show us how big this improvement is.

Please bring us a Designer, Hot Reload cant replace this.

BRING US THE GREAT SH*T !

I wasting time while i need to rebuild everything, this steals so many hours.
How do you want to build apps efficient without a Designer?

@halal-beef
Copy link

yeah, just loaded up maui wanted to make a decent ui and im met with xaml text, i like to look at things visually... to you know actually design

@saber-wang
Copy link

Without a designer, it is difficult to write the desired interface.

@jaworekplay
Copy link

Personally I don't care for WinForms designer, since it is using Margins (yuck!) when placing elements on a control. Preview of Window/UserControl would be great. Some apps are huge and it takes a long time to load, HotReload also won't really work if some assemblies are being loaded manually. Really a step backwards. No need for drag and drop.
#KeepDesignerSimple

@davepruitt
Copy link

Personally I don't care for WinForms designer, since it is using Margins (yuck!) when placing elements on a control. Preview of Window/UserControl would be great. Some apps are huge and it takes a long time to load, HotReload also won't really work if some assemblies are being loaded manually. Really a step backwards. No need for drag and drop. #KeepDesignerSimple

Yeah most people aren't wanting a drag-and-drop designer, but rather a XAML designer/previewer similar to what is already available in WPF, or what was previously available in Xamarin Forms.

@Siox0911
Copy link

Siox0911 commented Sep 7, 2022

Plz vote up this on the feedback page.
https://developercommunity.visualstudio.com/t/MAUI-XAML-Designer-and-editor-not-workin/1589956

@k3ldar
Copy link

k3ldar commented Sep 28, 2022

Coming from a WinForm/Web background (no WPF etc) I really wanted to try MAUI with a new project I have, however, without some form of gui editor I have no starting reference, especially as intellisense does not show anything and trying to obtain help from within the .xaml loads a generic page (showing a gui editor).

With no reference of what controls or properties are available within MAUI some form of gui editor is sort of essential from my PoV.

Hot reload is great, but only if you know what controls to add to a xaml file and what properties to set, so a +1 from me on this feature request

@Khaldoun-Baz
Copy link

I don't know why Microsoft is always complicating things, it is that hard to make a visual designer or previewer for MAUI?
Really I do not understand it's like pushing developers away, I do not know if I will invest more time in MAUI.

@dragnilar
Copy link

I'm going to have to add to the demand for a designer, or at least some type of in vs preview. Hot reload is too unreliable and too slow to get a visual representation of xaml changes.

@vigouredelaruse
Copy link

vigouredelaruse commented Oct 20, 2022

if this is a voting situation i vote for maui support from the xaml designer. with one product announcement much discontent would be eliminated. i doubt that would mean the elimination of any legacy xaml designer departments

also

  • private enterprise is not illegal everywhere
  • where private enterprises are legal nothing prevents private enterprises from publishing a maui xaml designer on github, or the app store
  • there's an actual place called maui. wow

@da-vics
Copy link

da-vics commented Oct 23, 2022

this is a voting situation i vote for m

Personally I don't care for WinForms designer, since it is using Margins (yuck!) when placing elements on a control. Preview of Window/UserControl would be great. Some apps are huge and it takes a long time to load, HotReload also won't really work if some assemblies are being loaded manually. Really a step backwards. No need for drag and drop. #KeepDesignerSimple

Yeah most people aren't wanting a drag-and-drop designer, but rather a XAML designer/previewer similar to what is already available in WPF, or what was previously available in Xamarin Forms.

100%

@zbyna
Copy link

zbyna commented Oct 23, 2022

From my point of view XALM is horrible even for using not mentioned large projects debugging. It is better to use https://docs.godotengine.org/en/stable/tutorials/ui/index.html for creating UI than recent ms products. There are good to use multiplatform RAD tools like: https://github.com/wxFormBuilder/wxFormBuilder or https://www.lazarus-ide.org/
but not for c#.

@Siox0911
Copy link

Fun fact. You can design a .Net maui App in Blender... without a XAML Designer. 😂

@MisinformedDNA
Copy link

Fun fact. You can design a .Net maui App in Blender...

How?

@dragnilar
Copy link

Fun fact. You can design a .Net maui App in Blender...

How?

Same question. I tried looking into this and I could not find anything.

@GuildOfCalamity
Copy link

Fun fact. You can design a .Net maui App in Blender...

How?

Same question. I tried looking into this and I could not find anything.

That's because it's a vapid comment, he's saying you can create a graphic visual. You can also draw a circle in Paint, but that's not going to help anyone with the lack of a real-time designer in VS.

@ToolmakerSteve
Copy link

ToolmakerSteve commented Jul 8, 2023

@davepruitt - sadly, it does feel like someone high up at Microsoft is under the delusion that Blazor is the only needed solution to "UI that runs everywhere". Microsoft hasn't been putting enough dev resources into Maui.

On the one hand, its hard to argue with the business model of developing using web standards, and having that run everywhere. It wouldn't surprise me if the Corporate IT VPs that Microsoft VPs talk to are totally in favor of this direction.

But its sad (as a long-time developer of desktop and mobile apps) if app development becomes entangled with complications/limitations/techniques that are necessary on the web, but not optimal for developer productivity/code-clarity when writing desktop/mobile apps.

Fortunately .Net Standard is open source, and does its job superbly. That foundation can be relied on.

And the Maui devs are moving forward with the resources they have. I hope they are permitted to finish the job, eliminate the remaining major bugs.


If not, there's always Unity 3D. They continue to improve their compliance with .Net Standard, and their UI Toolkit. (I haven't used it, just based on what I read.)


Its also possible that "map cross-platform UI to native controls" is simply too hard to ever be bug-free. I would love to see an alternative that fully renders to a bitmap, eliminating the internal complexity of UI at two different levels (the cross-platform classes + the native platform's controls).

Is anyone working on a "render to SkiaSharp" "platform" for Maui? Similar to what Flutter does? (Also similarities to Unity, AvaloniaUI, and Uno Platform).

I would help such an effort. Maybe take large chunks of AvaloniaUI's Skia rendering, and adapt it to Maui's API.

@XeonG
Copy link

XeonG commented Jul 8, 2023

" UI Toolkit. (I haven't used it, just based on what I read.)" ..its shit..and leaves a lot to be desired... but then so is everything these days.

kinda crazy how bad it has all gotten really.

@samhouts samhouts added area-tooling XAML & C# Hot Reload, XAML Editor, Live Visual Tree, Live Preview, Debugging and removed area-xaml XAML, CSS, Triggers, Behaviors labels Jul 12, 2023
@davepruitt
Copy link

Today I went to design a new pop-up that we are using in our app, and was reminded how useful it would be to have a designer, and how utterly insane and mindblowing it is that Microsoft has not yet created a designer for MAUI, given how much desire there is for this in the community.

Hot reload is not a good replacement for a XAML previewer/designer.

@GuildOfCalamity
Copy link

TBH I would use Hot Reload, if it worked properly... but it doesn't. How do designers at MS handle UI development?... are they really satisfied with the time wasted in adjusting the margin on a control and then having to build the solution again to see if it's correct?

@sangeethnandakumar
Copy link

@Shadowblitz16 @jsuarezruiz @Eilon - Please do something as a lot of people waiting to try MAUI needs this to effectively use this framework. WinForms was a huge success because of the innovative ways Microsoft did at that time.
Why keeping MAUI not appealing to most new devs who expect a designer?

@level54
Copy link

level54 commented Jul 25, 2023

I hate to be the bearer of bad tidings, but MS has no intention of listening to our whining. They are more interested in concentrating on getting MAUI ready for .NET 8 (see this)

And after that they'll be working on getting it ready for .NET 9 and so on and so forth. All/most of the bugs fixed in the latest preview was all for the desktop, ie Windows, so anybody using MAUI for devices will have to wait.....probably "at infinitum".

@dragnilar
Copy link

@level54 You're unfortunately right. It seems MSFT is probably on this course until Sataya is gone. I don't like blaming this all on the man, but I am under the impression he doesn't care about whether or not visual studio is "visual". So to me, his apathy has impacted the products. If someone else sees things differently, feel free to paint a brighter picture.

@davepruitt
Copy link

I hate to be the bearer of bad tidings, but MS has no intention of listening to our whining. They are more interested in concentrating on getting MAUI ready for .NET 8 (see this)

And after that they'll be working on getting it ready for .NET 9 and so on and so forth. All/most of the bugs fixed in the latest preview was all for the desktop, ie Windows, so anybody using MAUI for devices will have to wait.....probably "at infinitum".

Which just goes to show how underfunded/understaffed the team must be. If there has to be so much focus on "preparing MAUI for the next .NET version", nothing will ever actually get done.

Continuing my comment from yesterday: I spent 2-3 hours creating a pop-up dialog because I had to continuously compile/re-build/re-deploy every single time I made a change to the XAML. Then of course I had to also navigate to the correct place in my app to view the pop-up dialog. Hot reload didn't work at all. The whole process would have taken me 10 minutes if I had a XAML designer.

@XeonG
Copy link

XeonG commented Jul 25, 2023

"Continuing my comment from yesterday: I spent 2-3 hours creating a pop-up dialog because I had to continuously compile/re-build/re-deploy every single time I made a change to the XAML. "

Sounds terrible, by design this must be the goal of MS.. waste people's time, so long as you aren't ditching everything they do and still doing something with there crap they'll keep on track with this bullshit.

They don't want to invest in building such tools for there own stuff, which shows how much confidence they have in it. The fact MAUI (stupid product name 🏝) has the competition in the same space with UNO/Avalonia just makes everything MS is doing in this space seem dumb, they have the money to fund doing something better.

@dragnilar
Copy link

I hate to be the bearer of bad tidings, but MS has no intention of listening to our whining. They are more interested in concentrating on getting MAUI ready for .NET 8 (see this)

And after that they'll be working on getting it ready for .NET 9 and so on and so forth. All/most of the bugs fixed in the latest preview was all for the desktop, ie Windows, so anybody using MAUI for devices will have to wait.....probably "at infinitum".

Which just goes to show how underfunded/understaffed the team must be. If there has to be so much focus on "preparing MAUI for the next .NET version", nothing will ever actually get done.

Continuing my comment from yesterday: I spent 2-3 hours creating a pop-up dialog because I had to continuously compile/re-build/re-deploy every single time I made a change to the XAML. Then of course I had to also navigate to the correct place in my app to view the pop-up dialog. Hot reload didn't work at all. The whole process would have taken me 10 minutes if I had a XAML designer.

I believe it. It's even worse imo if you have Android involved.

@soroshsabz
Copy link

ITNOA

I think WinUI 3 and MAUI has same infrastructure for XAML Islands, so I think Microsoft must consider all request from WinUI 3.0 XAML Designer too for prioritizing this request to implement or not.

@Noemata
Copy link

Noemata commented Aug 8, 2023

Name any products released by Microsoft that use either MAUI or WinUI. Only UWP had a brief period of adoption by Microsoft during the Windows 8/10 life cycle. If Microsoft makes extremely limited use of MAUI and WinUI for their own development, why should you use it at all? That's the way I'm looking at the current state of Microsoft tech. Only invest in tech actually used internally by Microsoft. The roadmaps and declarations of support were very promising. At this page -> https://dotnet.microsoft.com/en-us/platform/support/policy/maui , tvOS is listed as supported by MAUI. It is not! It's these sorts of unfulfilled promises that lead folks astray. WinUI was supposed to be open sourced two years ago. Still waiting. WinUI was supposed to support the Map control and inking (both prominently declared on the original roadmap). Microsoft silently stopped mentioning support for the Map control, Inking, and a half dozen other critical items like validation. Just look at the sad state of UWP today. It's hard to find any official mention of it.

And for those not in the know, the WinUI team is mostly disbanded. As goes WPF, UWP, Xamarin, WinUI so goes MAUI before long.

Bitter. Yes, very.

@Enxyphered
Copy link

Enxyphered commented Sep 16, 2023

Absolutely disgusting that they think it's okay to try and force people to use MAUI without a previewer that doesn't require us to spin up the application. Not only that we have to code in navigation to the page that we would like before we can even start seeing what we are editing. Beyond scum. Absolute incompetency at it's best.

@vslee
Copy link

vslee commented Sep 16, 2023

@Enxyphered, I am interested in a MAUI designer as much as anyone else, but let's keep things respectful. Hurling insults isn't helpful.

@CAKCy
Copy link

CAKCy commented Sep 19, 2023

Please read and act accordingly!

image

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

Oh! And SPREAD THE WORD!
PLEASE!

@davepruitt
Copy link

I went to the link you provided and I up-voted it and posted a comment. Once again I am so amazed that Microsoft has basically ignored this issue for years now.

@MSBassSinger
Copy link

MSBassSinger commented Oct 26, 2023

The lack of drag-and-drop, visual designers like the WinForms designer is a worse problem for MS than they admit to realizing.

Consider that in the 1990s, one small team created the first (and wildly popular and emulated by competitors) visual designer for Visual Basic. Over time, this was migrated to Visual Studio when it replaced the Visual Basic IDE and Visual C++ IDE. It was popular precisely because it added value that "hot reload" designers cannot.

How?

  • For any given project, there is a set deadline by which to deliver.
  • There are finite development resources for the code writing portion of the SDLC, generally counted as number of developers.
  • The number of developers have a limited number of person-hours each to finish their work.
  • The person hours per developer can be calculated as T = #HoursUntilDelivery/#Dev
  • Without a drag-and-drop designer, a significantly larger percent of T is spent on UI design.
  • Likewise, a significantly smaller percent of T is devoted to the code behind (validation, business logic, data access, etc.).
  • If the development phase of the SDLC were an iceberg, the code behind portion is the part underwater (which is the vast majority).
  • With a drag-and-drop designer, a much smaller percent of T is spent on UI design.
  • Likewise, a significantly larger percentage of T is devoted to code behind, thus making the time spent proportional to the need and improving the quality of the project. That means less QA time is needed, and less refactoring initiated from the user testing.
  • Microsoft developers and program managers have come up through the command line/scripting paradigm that Windows developers left behind in the mid-1990s. To them, "hot reload" is a game changer, but only in the sense that someone from 1850 would see a rotary phone as a technological leap, ignoring the far greater productivity and ease of a 2023 smartphone.
  • As has happened throughout software development history, if Microsoft is unable to get their heads out of the rotary phone age and into the smartphone age (so to speak), they will go the way of those Microsoft replaced in past years that refused to make wise choices. Where is dBase, Wordperfect, Lotus 1-2-3, and others that either disappeared or exist only with a tiny number of users? Microsoft is not immune to that, and if Visual Studio is abandoned for UI development because the MS program managers are too enthralled with rotary phones, then it is only a matter of time before other MS products follow suit.

There is a solid argument, both in terms of revenue and technology, for a single drag-and-drop UI builder that services WinForms, MAUI (XAML), Blazor (HTML), and perhaps others by using the same principle (in reverse) that .NET uses when it writes multiple coding languages (C#, VB, etc.) as the same MSIL code. But first, MS has to assign or hire those with the vision and intellectual capabilities to do what Alan Cooper and his small team did (in principle) for WinForms back in the 1990s.

@MSBassSinger
Copy link

Please consider upvotes for:
https://developercommunity.visualstudio.com/t/Create-Common-Drag-and-drop-Designer-for/10501474

@soroshsabz
Copy link

Please consider upvotes for:
https://developercommunity.visualstudio.com/t/Create-Common-Drag-and-drop-Designer-for/10501474

@MSBassSinger please add your great description in to the main developer community ticket for bring back visual designer for all UI frameworks

Thanks

@soroshsabz
Copy link

@MSBassSinger

Microsoft change Developer Community ticket for this request, so please vote up this ticket.

https://developercommunity.visualstudio.com/t/XAML-Designer-for-Net-MAUI/10224319

@soroshsabz
Copy link

@maddymontaquila Please start implementing this issue.

@soroshsabz
Copy link

@davidortinau Please add Visual Designer for MAUI to MAUI roadmap for .NET 8 servicing update

@pinkfloyd11
Copy link

Please add Visual Designer for MAUI.
It is nonsense not have it in 2024...

@jnpl95
Copy link

jnpl95 commented Feb 28, 2024

Lots of people have made good points about why this feature is sorely needed. Wasting dev hours on UI design, especially for small teams is unnecessary. Rapidly prototyping UI development via drag and drop in a visual designer would save so much time. Having hot reload isn't the same.

I commented on this issue in Mar 2023, and it's been a year and still considered an open proposal after all the valid points raised. Will check back in Mar 2025, hopefully 4 years will be enough for the queue to be cleared and have this tooling be implemented.

@Daniel-Sh-uq
Copy link

At this point if MS doesn't want to give us at least normal XAML preview, lets make MAUI support html: #290.
Because developing MAUI without proper preview is just killing the productivity.

@dy-dev
Copy link

dy-dev commented May 13, 2024

Has anyone switched to Avalonia Framework in order to have a working viewer?
I'd be happy to have feedback on how things went

@GuildOfCalamity
Copy link

@dy-dev I tried avalonia for a while but it was clunky to use. I'd go back to WPF until someone at Microsoft can take the rose-colored glasses off and add a designer to WinUI3.

@vamman
Copy link

vamman commented May 13, 2024

When does Microsoft release the internal version of the Maui Visual Editor?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-tooling XAML & C# Hot Reload, XAML Editor, Live Visual Tree, Live Preview, Debugging proposal/open
Projects
Enhancements
Under consideration
Development

No branches or pull requests