Live data from Hacker News

Windows Presentation Foundation (WPF) on GitHub

github.com

21–30 of 102 posts

Re: Windows Presentation Foundation (WPF) on GitHub

#21
post #6

WPF was fantastic for rich desktop applications. It makes me very happy that there is active effort from Microsoft to port it to .NET Core. If only it was cross platform...

They have a directive to move it to .net core - assume I assume this will make it cross-platform?

Re: Windows Presentation Foundation (WPF) on GitHub

#22
post #7

Earlier quoted context omitted.

Neah, the internals are too Windows specific (Win32/DirectX) to be easely portable. Maybe this will be the basis of a cross platform toolkit in the future , but right now MS doesn't seem to really care....

...which is really unfortunate. If they did care, it could easily lead to a renaissance of desktop apps.

Why? The Windows desktop is by a gigantic margin the most popular desktop environment. Mac and Linux combined cover perhaps a 10% or less, so if 90% coverage isn't enough for such a renaissance, why would a +~10% change that (especially considering that most of that 10% is Mac where anything except Cocoa feels weird and wrong to a very picky userbase)?

Also why would C# and WPF do that instead of the myrriads of other languages and desktop tech? WPF alone wasn't exactly popular on Windows itself.

Re: Windows Presentation Foundation (WPF) on GitHub

#23
post #6

WPF was fantastic for rich desktop applications. It makes me very happy that there is active effort from Microsoft to port it to .NET Core. If only it was cross platform...

You want Avalonia for that: https://github.com/AvaloniaUI/Avalonia

I have really high hopes for Avalonia but don't know anyone who's used it for anything other than kicking the tires. I'd love to hear of any experiences.

And I really hope MS is neglecting WPF because some key insiders are looking to hand over the desktop story to some combination of Avalonia and Blazor.

Re: Windows Presentation Foundation (WPF) on GitHub

#24
Totally agree with previous comments about WPF having a steep learning curve. We recently released our photo-tagging application called Tag That Photo. It's currently available for Windows and built on the WPF platform (Mac client coming in future). It detects & recognizes faces in user's local photo collections, allowing them to tag people, add keywords and location data to the images. All the data can be written back to the image metadata for import into other photo editing tools. Unlike many other face-recognition platforms out there, everything is executed locally so user's photos stay private.

Prior to creating Tag That Photo, we had little experience with the WPF beyond simple demo type applications. Of course we've come a long way over the course of development but it certainly hasn't been easy. We have extensive experience with many other UI frameworks such as WinForms, Android / iOS as well as various web frameworks, and I think it's safe to say that once you wrap your head around it, the WPF has the slickest architecture. The team that designed this really knew what they were doing. It has this "peeling-the-onion" mentality to it where it's simple to implement straight-forward use-cases but if you want lower-level control of essentially every aspect of rendering, binding, input handling etc it's all exposed for you.

In case you want to see the final product: https://www.tagthatphoto.com

Re: Windows Presentation Foundation (WPF) on GitHub

#25

Compared to winforms, WPF has an incredibly steep learning curve. Working with it was always painful to me. The vector graphics architecture they mention makes it even harder. While it's rich capabilities enable you to implement everything you can dream of, doesn't the same hold for JS desktop apps? (+ they are cross platform) I don't see the use case anymore...

We developed a number of applications on it, but found it to be very verbose, quite brittle and needlessly complex.

It is brittle because XAML itself is a compiled language without the ability to step through or debug well, which means runtime errors in the object tree usually causes the entire app to crash with very abstract error messages.

it is complex because the language is supposed to be an object tree building mechanism and thus needs to be quite generic.

It is verbose because of the underlying abstracted data model. e.g dependency properties etc.

Compared to HTML, where the 'evolutionary' pressure to create a workable compromise is much higher.

I used to think XAML could be better if architected well, but the missing ecosystem and usage around it made it so, that HTML was and still is massively more productive.

Re: Windows Presentation Foundation (WPF) on GitHub

#27
post #7

What are the implications of this? WPF in Linux?

Neah, the internals are too Windows specific (Win32/DirectX) to be easely portable. Maybe this will be the basis of a cross platform toolkit in the future , but right now MS doesn't seem to really care....

They have a cross platform toolkit right now. Xamarin Forms. It looks like WPF is going to be a build target once they get it over to core. People aren't liking the current Windows desktop target for XF, which is UWP.

Re: Windows Presentation Foundation (WPF) on GitHub

#28
post #22

Earlier quoted context omitted.

...which is really unfortunate. If they did care, it could easily lead to a renaissance of desktop apps.

Why? The Windows desktop is by a gigantic margin the most popular desktop environment. Mac and Linux combined cover perhaps a 10% or less, so if 90% coverage isn't enough for such a renaissance, why would a +~10% change that (especially considering that most of that 10% is Mac where anything except Cocoa feels weird and wrong to a very picky userbase)? Also why would C# and WPF do that instead of the myrriads of othe…

Because once you understand it, WPF and C# is fantastic to work with. It's hands down the best UI framework i have ever worked with.

XAML makes it very easy to layout apps that scale well, and it's built-in states for controls and easy styling is very handy.

Re: Windows Presentation Foundation (WPF) on GitHub

#29

Compared to winforms, WPF has an incredibly steep learning curve. Working with it was always painful to me. The vector graphics architecture they mention makes it even harder. While it's rich capabilities enable you to implement everything you can dream of, doesn't the same hold for JS desktop apps? (+ they are cross platform) I don't see the use case anymore...

Agreed. I actually "retired" from programming when WPF was released and got into management. Framework fatigue was definitely a factor in my decision -- having to toss out a bunch of knowledge and then learn something new that provides marginal benefits.

Re: Windows Presentation Foundation (WPF) on GitHub

#30
When I had the chance to use it seriously many years ago, what I found about WPF is that once you got the hang of it, you could literally look at any sufficiently complex application UI and know immediately how to build it using WPF in record time.

It's that composable.

Post reply on HN