Forms "skinbar"?



  • Kann man .NET Forms irgendwie einfach "skinnen"? Oder geht das nur indem man jede einzelne Control-Klasse überlädt, und dann den Zeichen-Code abändert?

    Und weil wir gerade dabei sind: gibt's irgendeinen "Standard-Weg" (="so wie man es üblicherweise macht") wie man performant zeichnen kann? Die "originalen" GDI+ Klassen sind ja ziemlich zum Füsse einschlafen...

    Und kann man mit .NET Forms irgendwie halbwegs einfach und halbwegs performant Transparenz hinbekommen? Also dass z.B. ein ganzes Fenster mit allem was drin ist zu N% transparent gezeichnet wird?

    Oder wäre bei sowas WPF angesagt?
    Oder gibt's gar schon noch was neueres als WPF, mit dem sowas schön und einfach geht?

    Umgesetzt werden soll eine "schöne" Oberfläche, die nicht nach Windows aussieht sondern einen "Custom" Look hat. Und das alles sollte ohne allzu dicke Grafikkarte und/oder CPU flüssig laufen, auch wenn mal viele Fenster/Controls sichtbar sind. Das aber nur nebenbei erwähnt, denn Performance-Tests werden wir wohl oder übel sowieso machen müssen.

    Viele viele Fragen. Wäre toll wenn jmd. mit ein wenig Erfahrung was diese Dinge angeht mir einige davon beantworten könnte... 🙂



  • Also zu dem Skinnen kann ich auch nur soviel sagen, das es in Forms nicht so einfach möglich ist wie zum Beispiel in WPF.Da wird dir wohl nichts anders übrig bleiben als wirklich alles zu überladen usw, du kennst den Weg ja schon 🙂

    Das mit der Transparenz,fällt mir auf Anhieb nur die Opacity-Eigenschaft vom Formular ein, einfach langsam runterskalieren oder hochskalieren je nach Fokus oder so.

    Ansonsten würde ich für solche schönen Designsachen, wohl eher auch WPF umschwänken.



  • Tjo...
    Vor WPF schrecke ich etwas zurück, weil ich genau garkeine Erfahrung damit haben. Und der WPF-Editor von der 2010 Beta ... war nicht so toll übersichtlich. OK, hab jetzt nur 15 Minuten damit rumgespielt... aber diese 15 Minuten waren nicht gerade eine Erleuchtung. Mal ganz davon abgesehen dass wir vermutlich Studio 2005 einsetzen würden. Maximal noch Studio 2008, aber da müssten wir auch schon einen riesen Haufen Projekte umstellen.



  • Ich würde sagen, dass sich WPF schon lohnt, wenn es mehr als nur einfache Fenster sind. Performance-Probleme kann es unter XP geben, wenn 3D-Zeug verwendet wird da kein Hardware-Rendering.
    Ansonsten ist es auch nicht so kompliziert wie es am Anfang scheint. Klar braucht man wohl einige Zeit um rein zu kommen. Aber da gibt es genug Material. Haufenweise Beispiele und Anleitung sind im Netz zu finden.

    Außerdem wird WinForms meiner Einschätzung nach eher veraltet wirken. Die WPF-Applikationen bieten so viel mehr Gestaltungsmöglichkeiten und sehen einfach cooler aus (naja potenziell). Und mit Win7 wird dieses Jahr das zweite Betriebssystem rausgebracht, dass mindestens .NET 3.0 mit ausliefert.
    Daher denke ich, dass es durchaus Sinn macht neue Anwendungen mit WPF zu bauen, wenn die GUI mehr als nur ein gewöhnlicher Kasten voller Controls ist.



  • Target OS ist fix: Windows XP embedded.
    Also kein Vista oder 7. Und auch keine dicken Grafikkarten. Grafik-Hardware in der Klasse GMA 950 (Minimum, aber muss ja auch auf den kleinsten Kisten laufen).

    Performance-Probleme kann es unter XP geben, wenn 3D-Zeug verwendet wird da kein Hardware-Rendering.

    Hm.
    Hmmmmmm.
    Werden denn normale 2D Sachen unter XP in Hardware gerendert, oder muss das auch alles die CPU machen?



  • Mist, dann bleibt dir wohl nichts weiter übrig als doch bei der WinForms zu bleiben.Musst halt dann damit leben das du so gut wie alles per Hand machen musst 😞



  • Naja...
    Es muss garnicht C# sein. Es hätte sogar Vorteile wenn es C++ wäre, und nicht C#.
    Bloss kenn ich für C++ schon gleich garkeine Windowing-Toolkits mit denen ich gerne arbeiten würde.

    CE-GUI wäre evtl. ne Möglichkeit, aber die spackt auch mehr rum als mir lieb ist...



  • hustbaer schrieb:

    Naja...
    Es muss garnicht C# sein. Es hätte sogar Vorteile wenn es C++ wäre, und nicht C#.
    Bloss kenn ich für C++ schon gleich garkeine Windowing-Toolkits mit denen ich gerne arbeiten würde.

    CE-GUI wäre evtl. ne Möglichkeit, aber die spackt auch mehr rum als mir lieb ist...

    Hi,

    Schon mal von Juce gehört? http://www.rawmaterialsoftware.com/juce/

    Kannst dir ja die demo runterladen, und dann guggn obs dir gefällt & reicht.



  • Nein, noch nie gehört. Danke für den Hinweis!

    In den Features steht nichts vonwegen "Skinable" - weisst du zufällig ob das (relativ einfach) geht?



  • hustbaer schrieb:

    Nein, noch nie gehört. Danke für den Hinweis!

    In den Features steht nichts vonwegen "Skinable" - weisst du zufällig ob das (relativ einfach) geht?

    Hab gehört das es geht, selbst hab ich die Lib. noch nie vorher benutzt. Falls es nicht klappt, dann kannst dir wxSkin + wxWidgets anschauen, obwohl mir wxWidgets persöhnlich zu veraltet ist.

    cu



  • Es gibt für .Net auch noch das hier: http://www.skincrafter.com/products/skincrafter-lite

    (Microsoft verlinkt es, wenn man z.B.: eine C# Express Edition herunterläd ➡ keine Ahnung wie gut das ist)



  • Danke!


Anmelden zum Antworten