Autor Beitrag
Talemantros
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 444
Erhaltene Danke: 2

Win7 Proff 64bit
C# (VS2013)
BeitragVerfasst: Di 17.12.13 21:36 
Hallo zusammen,
ich hatte ja schon mal eine Frage aufgemacht, die zurecht weil ich 2 Fragen vermischt hatte geschlossen wurde.
Nun habe ich gerade mal Zeit und dachte ich schreibe noch mal.

Wie einige vielleicht mitbekommen haben versuche gerade C# zu lernen und komme langsam aber stetig voran.
Heute ist noch einiges an Literatur geliefert wurden.

Was mich beschäftigt ist, dass die Menüs und Symbolleisten sehr "alt" und nicht mehr zeitgemäß aussehen und neuere Anwendung oft grafisch ansprechender sind.
Ich habe mal ein VBA Projekt unter Excel 2010 gemacht mit dem ich die MEnüs über Grafiken in den Ribbonx gestaltet habe.

Ich würde gern sowas ansprechenderes auch in den C# Anwendungen nutzen und frage mich wie dies geht?!

Kann mir da wer helfen?

Vielen Dank

Viele Grüße
Daniel


Moderiert von user profile iconChristian S.: Topic aus Basistechnologien verschoben am Di 17.12.2013 um 20:36
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Di 17.12.13 21:47 
In WPF gibts das Ribbon als Control. In Winforms müsstest du dir da was dazusuchen. Wirf doch mal Nuget an und such nach Ribbon. Da werden dir ein paar Kandidaten genannt.
Talemantros Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 444
Erhaltene Danke: 2

Win7 Proff 64bit
C# (VS2013)
BeitragVerfasst: Di 17.12.13 22:26 
Hi,
danke schonmal

Gibt es einen Weg der "proffesioneller" oder bzw. "besser" ist?

Wenn ich jetzt neu anfange sollte ich vielleicht gleich von C# zu WPF gehen?

Danke

Gruß
Daniel
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4708
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Di 17.12.13 22:55 
Zitat:
Gibt es einen Weg der "proffesioneller" oder bzw. "besser" ist?


Ehrlich? Keine Ahnung. Ob WPF, Winforms oder what ever. Das Microsoft hin und her ist so undurchschaubar das man nicht weiß wo man besser aufgehoben ist. Nimm das was dir besser liegt ;) Und wenn du ne saubere Trennung zwischen UI und Logik hinbekommst sollte eine nachträgliche Umentscheidung ja leicht umzusetzen sein.

Wenn du die Frage bezüglich des Ribbons meinst und gar nicht die Technik um das umzusetzen dann meine ich das sich Ribbons nur für eine bestimmte Sorte Anwendung eignen. Word und Excel super, File Explorer Humbug, Outlook nur für den MailEditor Teil sinnvoll sonst auch Humbug. Ribbons waren mal die aktuelle Sau die durchs Dorf getrieben wurde und den üblichen 'wer nen Hammer hat sieht überall Nägel'-Effekt ausgelöst hat. Auch wenn es professioneller aussieht ist es trotzdem nicht zwingend hilfreicher.
Talemantros Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 444
Erhaltene Danke: 2

Win7 Proff 64bit
C# (VS2013)
BeitragVerfasst: Mi 18.12.13 19:36 
Hi Ralf,
Vielen Dank für die ausführliche Antwort
Schönen Abend noch

Viele Grüße
Daniel
Palladin007
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1282
Erhaltene Danke: 182

Windows 11 x64 Pro
C# (Visual Studio Preview)
BeitragVerfasst: So 22.12.13 22:50 
Also wir nennen WPF im Betrieb liebevoll WTF, für "What the f***?" :D

Ich hab auch mal gelesen (bin bei WPF noch nicht so weit), dass die Begeisterung für WPF eher einer Parabel ähnelt. Zu erst Frustration, weil es doch schwer ist, sich an WPF zu gewöhnen, dann immer mehr Begeisterung, da man fest stellt, was für viele tolle Dinge man mit WPF machen kann und dann geht's wieder abwärts, da es anscheinend an vielen STellen nicht ganz so gut umgesetzt ist, auch wenn die Idee toll ist.



Ich meine auch mal gelesen zu haben, dass die Oberfläche für Windows Vista in WPF geschrieben wurde.
Ob das stimmt, weiß ich nicht, aber ich bin geneigt, es zu glauben, wenn ich XP im direkten Vergleich zu Vista setze.
Das Betriebssystem mag ein Reinfall gewesen sein, aber optisch ist der Sprung dann doch groß und mir gefällt's.
Auch denke ich, dass Software, wie Visual Studio alle mit WPF geschrieben wurden, das müsste es theoretisch ja auch für C++/CLI geben.



Wenn du also optisch ansprechende, tolle und aufwendige Oberflächen bauen willst, wirst du an WPF nicht vorbei kommen, da es dann doch enorm viele Möglichkeiten gibt.
In Windows Forms kannst du zwar Klick-Events über einem Bild ab fangen, eine tolle Klick-Animation - und wenn es nur ein simple Button ist - hast du dann aber nicht. Du könntest dem Button ein Hintergrundbild geben, aber auch das ist nicht so furchtbar toll.
Die einzige Möglichkeit, die dir bleibt, ist ein eigenes Control, was das dann auch so dar stellt, wie du es willst.

Ein Problem hast du aber auch noch: Windows Forms ist deutlich langsamer als WPF. Es arbeitet noch mit GDI+, vielleicht hast du eventuell bei der Arbeit mit der Klasse Bitmap schon mal so einen tollen nichtssagenden Fehler gehabt, wo dann irgendwo GDI+ drin stand. Das merkst du besonders, wenn sich das Fenster in schneller Folge ändert.
WPF setzt direkt auf DirectX auf und kann die Hardware-Leistung daher viel effektiver aus nutzen und das merkt man.




Was deine aktuelle Situation angeht:

Ich denke, es ist unklug, jetzt schon mit WPF anzufangen, wo du gerade mal mit C# begonnen hast.
Windows Forms bringt weit schneller und einfacher relativ anschauliche Oberflächen, auch wenn es nicht so flexibel und schnell ist. Außerdem ist es immer gut, wenn du mit WinForms umgehen kannst, denn kleine Anwendungen lassen sich doch viel schöner mal eben mit WinForms zusammen basteln.
WPF bringt dagegen eine komplett neue Sprache mit sich (XAML). Du kannst zwar auch ohne XAML eine Oberfläche in WPF programmieren, allerdings bedeutet das dann Unmengen Code, durch den keiner durch blickt und einen Designer findest du im Visual Studio dafür auch nicht, der erstellt meines Wissens nach nur in XAML.

Meine Meinung daher:
Lerne gut mit C# umzugehen und nutze WindowsForms, das reicht für den Anfang vollkommen aus.
Danach kannst du immer noch WPF lernen und hast dann stabile Kenntnisse in C#.



PS:
Was ich über WPF geschrieben habe, ist zum größten Teil aus Erzählungen von der Arbeit, ein paar Quellen im Internet und ein bisschen von meinem WPF-Buch zusammen gesetzt.
Wenn sich da also grobe Fehler eingeschlichen haben, dann tut es mir Leid und ich bitte, die erfahrenen Kollegen hier, diese zu korrigieren. ^^
Talemantros Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 444
Erhaltene Danke: 2

Win7 Proff 64bit
C# (VS2013)
BeitragVerfasst: Sa 28.12.13 15:24 
Hi,
vielen Dank für deinen ausführlichen Bericht.

Merci

Gruß
Daniel