Winforms Themes

(Bob Russell) #1

As an ex Delphi person, I miss the Theme functionality. What would you recommend me to explore?


(marc hoffman) #2

i’d suggest looking at using WPF instead of WinForms.

(Bob Russell) #3

Hi Marc. I had a feeling you would say that. I did spend some time exploring WPF and found it quite difficult, so perhaps I should have another go.

Thanks for your response.

(Alan Olson) #4

There is a learning curve, but its worth it. I also was a Delphi programmer since version 1.0.

WPF is so much nicer, a hell of a lot more flexible, and I could go on and on. For theming, I’ve invested in the Developer Express WPF subscription which comes with some nice themes.


(Bob Russell) #5

Alan, Thanks for reply. Ah, the happy days of Delphi 1. However, we must move on. I’m re-visiting WPF, so hopefully I can get more confident. I’ll have a look at Developer Express WPF as well.


(Patrick Lanz) #6

Hi Bob,
You can also take a look at Telerik UI for WPF.
They even have theming for windows form (but I recommend going to WPF), see Telerik UI for WinForms.

(Bob Russell) #7

Hi Patrick, Thanks also. The DevExpress stuff looks very good (and I’ve used their software before with Delphi). Forgive my ignorance, but is it just a case of purchasing, downloading the DevExpress WPF stuff, then installing? I’m currently using Elements/Oxygene with VS2015 and Windows 10

Would you suggest running the DevExpress WPF trial first?

Many thanks.


(Alan Olson) #8

Yes, just purchase, download, install and you’re set.

(Bob Russell) #9

Thanks. I’m exploring…

(Bob Russell) #10

The DevExpress route looks good, but I’m still not convinced that WPF offers significantly more than WinForms. Whilst the WPF paradigm looks like offering the most flexible approach in principle, since the majority of applications I write are done by myself as a “lone” developer, and are relatively small scale Client/Server applications, plus I feel most comfortable “coding” the logic I want (bad though that may be) rather than all the “complexity” of data binding etc., I’m still thinking towards WinForms.

I’m sure my bias is very much influenced by coming up from the Delphi environment, where, whatever their more recent failings, the ability to get a specific UI (many of which do not fit a simple grid or flow approach) up and running in no time at all is a major strength. It’s probably just my lack of experience, but doing the same in WPF I find to be hard work.

So any thoughts/comments/ would be very welcome

(Alan Olson) #11

Bob -

I totally understand where you are coming from. Our Delphi experience sounds the same - i.e. avoiding data binding, doing/displaying the data ourselves, etc etc.

When I dumped Delphi for Elements, I also started with a couple of WinForms projects since I was able to adapt that much easier. Yeah, they worked, but I had also looked at a couple WPF sample apps, and it was obvious that WPF was the direction .NET was going because those apps just LOOKED so much better. I forced myself to do my next project in WPF and there was a definite learning curve with XAML, but I also forced myself to try out .NET bindings and I learned pretty quickly that they are implemented in WPF a hell of a lot better than in Delphi.

In terms of XAML, you just need to spend some time reading up on the basics, and the rest will come to you pretty quickly. Its hard as a Delphi programmer to design all your UI in XAML vs. dragging and dropping components and setting properties, but surprisingly, once you get the hang of it its actually quite quicker.

I have completely done a 180 on data bindings now that I’m using WPF, DevExpress and RemObjects Data Abstract. IF you work primarily on Windows, take a look at Data Abstract, learn LINQ and they try out DALINQ and you will never, ever, turn back. in my opinion, LINQ is by far the best feature of .NET. You save so much code. Then combine that same logic with Data Abstract for database queries, binding, property changed events, and you are set.

Don’t give up on WPF yet…


(Bob Russell) #12

Alan, I appreciate your input. I think one of the problems is that there is lots of stuff on the web helping with WPF based on C# or vb, and I still have difficulty in translating some of that into the Pascal type syntax.

It’s interesting that nobody on this forum has yet come up with a vote for WinForms.

Sigh! Such a lot to learn - yet isn’t that part of the fun?

So I have to decide whether to spend my $$ on DevExpress WPF or DevExpress Winforms (or both!!)


(Alan Olson) #13

The truth of the matter is that WinForms is truly “old tech” and WPF is the way to go when developing for Windows .NET.

(Alan Olson) #14

One other thing - don’t forget about Oxidizer! You can paste C# code into your Oxygene code and have it translated to Oxygene syntax for you. I do that quite often!

(Bob Russell) #15

True. I’d (temporarily I hope) forgotten about that,