0

I code GUIs in .NET frequently, and most of them only have the value of being a GUI, e.g. they don't do anything otherwise impossible. So most of the development goes to making them friendly, intuitive and eye-candy.

Then it comes to my mind it would be simply amazing to skin them through .msstyles files, since there are so many places to find those files, and also tools to make your own. And some of those msstyles are just stunning, probably not for your whole desktop, but for styling homemade apps it would be perfect.

So, is it possible to style apps in .NET (either VB or C#) using .msstyles (or maybe something similar, since .aero.msstyles, .theme, etc. should be convertable to some point)? Even if it requirired some complicated setup or something to learn, once made practical all GUI development would be much easier. Maybe some sort of virtualization? I don't know how virtualization works behind the scenes, but I believe the .NET app calls some Windows API to give him the style, maybe virtualizing that would work? how?

Any idea is very welcome! And if I find an answer to that I'll contribute it as well :)

Camilo Martin
  • 37,236
  • 20
  • 111
  • 154
  • It might be money well spent on something like DevExpress's WinForms (they're skinnable) components. – hometoast Dec 11 '09 at 16:10
  • But my whole point is to stay away from using third party components, instead just using what the OS uses, without affecting the whole OS. like if the msstyles was in use, but just for that app. In any case, I tried DevExpress and my thought was that it's a very well _advertised_ app. – Camilo Martin Dec 11 '09 at 17:00
  • @Camilo: Please keep in mind that the user may have set their Windows theme because they liked it, in which case what you are asking is how to take something that the user requested, undo it, and make them "take it" some other way. – Sam Harwell Dec 11 '09 at 20:00
  • I know the user might have set it's own style. but, in my personal experience, most users have that horrible Luna theme or even worse, the Olive Luna theme. also, I want to theme apps that I code for myself too. And it's not like I will offend the user for giving him/her a different visual experience :) – Camilo Martin Dec 11 '09 at 22:16

2 Answers2

3

If you want to theme your own GUI then why don't you use WPF?

ZippyV
  • 12,540
  • 3
  • 37
  • 52
  • 1
    +1 Exactly. Although I fear we may have an ATI Catalyst Control Panel or some nonsense in the works. :o – Sam Harwell Dec 11 '09 at 19:58
  • WPF supports what kind of theming? I didn't bother learning it before because I thought it was more ASP.NET oriented than what I wanted, desktop apps (since for the web I stay away from M$ and use Apache/PHP). Does it support msstyles or something like that (.theme, etc.)? – Camilo Martin Dec 11 '09 at 22:19
  • A WPF application uses XAML (xml) to define the interface. It's vector based, you can design your own application wide theme and it supports animations. The best tool available to create all this stuff is Microsoft's Expression Blend. Silverlight is a light-weight version of WPF that targets websites as a Flash alternative. ASP.NET is completely separated from WPF or Silverlight except they share a part of the .Net framework. – ZippyV Dec 11 '09 at 23:24
  • Thanks a lot! =) I'll try to learn WPF if it's good as a RAD platform, but since it seems possible (all the tools I mentioned work!) to use msstyles, I'll use it for simple GUIs, while WPF would be surely worth to learn for biger projects. Since most of what I do is RAD :) But I'll probably choose your answer unless some better one pops up ^^ – Camilo Martin Dec 12 '09 at 05:46
  • P.S.: Is it me or MS took a look at XULRunner? – Camilo Martin Dec 12 '09 at 05:48
  • You can still do RAD using WPF, drag and drop controls is still possible and some say the databinding is even superior compared to Winforms. – ZippyV Dec 12 '09 at 19:46
0

Ok, I've found something that may work:

http://www.codeproject.com/KB/library/USkin.aspx?display=Print

If someone provides a better answer, of course, place it here, as I would not choose my own answer unless this question remains here long enough as to be called dead (how much that would be? a week? a month?)

Update: for $60, a good solution with possibility to convert msstyles as well:

http://www.ksdev.com/skinengine/index.html

I'll try both and report my experience eventually.

Update 2: SkinSoft's Visual Styler seems quite good too.

Camilo Martin
  • 37,236
  • 20
  • 111
  • 154