Autor Beitrag
navigato
Hält's aus hier
Beiträge: 14
Erhaltene Danke: 1

Win7
C#,Firebird
BeitragVerfasst: Mo 08.10.12 23:43 
Visual Studio 2012 Professional habe ich als Testversion von Microsoft herunter geladen. Nach 4 Stunden spielen mit Visual Studio 2012 bin ich recht enttäuscht. An diesen Windows-8-typischen-Metro-Style kann ich mich nur schwer gewöhnen, es kommt mir vor wie der weiße Adler auf weißem Hintergrund, der sich - mit der Lupe betrachtet - doch so ganz marginal vom Hintegrund absetzt... Aber gut, in Zeiten von Windows 8 wird sich die ganze Welt daran gewöhnen müssen, ich frage mich aber schon, ob sie das klaglos hin nimmt... Und einen Farbmonitor benötigt man ja auch nicht mehr, ganz wie vor 50 Jahren...

Schlimmer ist aber der xaml-Editor für WPF. Man kann ohne Fehler kompilieren, die Anwendung starten und trotzdem beim Ersten Öffnen eines Controls im xaml-Designer sofort 42 Fehler haben, die im Grunde alle gelogen sind (und ich daher auch nicht alle im Detail angeben möchte, sowas wie ParseException: Zeilennummer "23" und Zeilenposition "80" von "Die Angabe eines Werts für "System.Windows.StaticResourceExtension" führte zu einer Ausnahme.".), da die Anwendung ja problemlos mit Visual Studio 2012 feherlfrei kompilierbar ist. Der geleiche Code führt in Visual Studio 2010 beim Arbeiten im xaml-Designer sebstverständlich nicht zu Fehlern.

Nachdem ich mich über diesen Mist wahnsinnig geärgert habe und weil ich auch in englischsprachigen Foren nur Fragen ohne Antworten diesbezüglich gefunden habe, habe ich auch nicht mehr mit einem anderen Farbschema herumgespielt (welches man wohl unter Tools/Optionen/Umgebung/Allgemein ändern kann).

Wer kann mir sagen, welchen versteckten Knopf ich übersehen habe, damit man überhaupt eine WPF-Anwendung mit Visual Studio 2012 sinnvoll schreiben kann?

Wer baut mich mit irgendwelchen positiven Erfahrungen mit VS2012 wieder auf? Gibt es wirklich eine Grund von VS2010 auf VS2012 zu wechseln, wenn man in erster Linie WPF und WCF-Technologien mit C# nutzt?
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Di 09.10.12 00:42 
Bezweckt Dein Posting mehr als Dampf abzulassen? Wenn dem so ist, würde ich Dich bitten, Dein Problem so zu beschreiben, dass man Dir auch helfen kann ;-)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
mandras
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 433
Erhaltene Danke: 107

Win 10
Delphi 6 Prof, Delphi 10.4 Prof
BeitragVerfasst: Di 09.10.12 01:01 
user profile iconChristian S. hat folgendes geschrieben Zum zitierten Posting springen:
Bezweckt Dein Posting mehr als Dampf abzulassen? Wenn dem so ist, würde ich Dich bitten, Dein Problem so zu beschreiben, dass man Dir auch helfen kann ;-)


Ich denke das war ein Posting wie ich es auch ablassen würde nach Frustration: "Was habe ich übersehen".
Nach Überdenken von dem was man durchführte und frustriert ist und ggf. das Getestete mit dem Bewährten verglichen hat ist man mehr als ärgerlich.

Aber es stimmt, eine nähere Erläuterung des Problems wäre hilfreich. Was mich jedoch betrifft.. Mit VS habe ich vor Jahren abgeschlossen. Mit ähnlichen Unmutsäußerungen :) Ich werde es jedoch verfolgen. Und zu Win8 kann ich gar nichts sagen.
navigato Threadstarter
Hält's aus hier
Beiträge: 14
Erhaltene Danke: 1

Win7
C#,Firebird
BeitragVerfasst: Di 09.10.12 01:06 
Das mit dem Dampf ablassen muss ich wohl zugeben! Mandras hat mit seinem ersten Satz nicht so unrecht, man möge mir verzeihen...

Den zweiten Teil
Zitat:
Mit VS habe ich vor Jahren abgeschlossen. Mit ähnlichen Unmutsäußerungen.

kann ich aber nicht unterstreichen, ich war und bin ein großer Fan von Visual Studio.

Aber trotzdem hat mein Posting einen sehr ernsten Hintergrund. Ein WPF-Projekt dass in Visual Studio 2010 entwickelt wurde und nun mit Visual Studio 2012 weiter entwickelt werden könnte, hat beim Versuch den xaml-Designer in Visual Studio 2012 zu öffnen um ein UserControl zu zeigen zu Fehlern wie oben oder unten angegeben geführt, obwohl der Code in VS 2012 eben fehlerfrei compilierbar und auch ausführbar ist. Und ich frage mich nun, ob dieses Phänomen bekannt ist. Und falls ja, was ich machen kann um es abzustellen oder ob das tatsächlich ein Bug ist, was ich eigentlich gar nicht glauben kann!

Ich will gerne ein Beispiel geben:
In einem UserControl gibt es folgenden xaml-Code
ausblenden XML-Daten
1:
2:
3:
<StackPanel Name="spEditfelder_Verzehrwünsche"
                Background="{StaticResource BackgroundBrushMain}"
                Orientation="Vertical">

Die Resource "BackgroundBrushMain" ist in einem anderen Projekt in einem ResourceDictionary definiert, wobei ein Verweis auf dieses Projekt vorliegt:
ausblenden XML-Daten
1:
<SolidColorBrush x:Key="BackgroundBrushMain" Color="#FFF3F6FB" />					


Das lässt sich ja auch fehlerfrei kompilieren und es funktioniert beim Ausführen auch einwandfrei!

Das Problem ist der xaml-Designer in VS 2012, der nun als Fehler ausgibt:
"Die Ressource BackgrundBrushMain konnte nicht aufgelöst werden".

Und das macht VS 2010 eben nicht! Dort wird das Control makellos angezeigt. Und weil dieser und auch andere Fehler in allen UserControls auftreten, entsteht wohl ein Bild wie ich es hier angefügt habe.

Noch eine Anmerkung: Ich habe auf dem Rechner sowohl die Testversionen von VS 2010 und VS 2012 (Version 11.0.50727.1) installiert und das Projekt mal in VS 2010 und mal in 2012 geladen ohne irgendeine Codeänderung!

Es ist ein ernstes Thema, weil ich eigentlich beabsichtigt hatte tatsächlich Geld für die Anschaffung von VS 2012 auszugeben. Sollte das hier beschriebene Phänomen aber ein Bug sein, so werde ich warten...

Und dann wollte ich zusätzlich in die große Runde fragen, ob ich der einzige bin, der den neuen Style (für VS2012) für eher nicht so gelungen hält. Aber gut, das ist ein ganz anderes Thema.

Ich bin gespannt ob man mir nun helfen kann...
Einloggen, um Attachments anzusehen!
navigato Threadstarter
Hält's aus hier
Beiträge: 14
Erhaltene Danke: 1

Win7
C#,Firebird
BeitragVerfasst: Mi 10.10.12 10:19 
Ich konnte mir nun selber helfen: Meine Lösung für das Problem ist aber völlig anders als erwartet und hat einen sehr faden Beigeschmack:

Die Fehlermeldung des xaml-Designers in VS 2012 war völlig richtig: Die Ressource konnte nicht erkannt werden, weil das Projekt - entgegen meiner Behauptung weiter oben - gar keinen Verweis auf das Projekt mit dem ResourceDictionary, in dem die Ressource definiert ist, hatte. Es war genau umgekehrt. Das Projekt der Ressourcendefinition hatte einen Verweis auf das Projekt, in der die Definition verwendet wurde. So ist die oben angegebene Fehlermeldung absolut nachvollziehbar.

Ich habe nun das Projekt mit den Ressourcendefintionen aufgelöst und es in das Projekt integriert, wo die Defintionen auch benötigt werden. So gibt es keinen Fehler mehr im xaml-Designer von VS 2012.

Der fade Beigeschmack: Warum hat es den xaml-Designer von VS 2010, den Compiler in VS 2010 und den Compiler in VS 2012 nicht gestört, dass dieser Fehler vorhanden war? Warum kann man in VS 2010 und VS 2012 trotz des offensichtlich fehlenden Verweises trotzdem ohne Fehler die "Projektmappe neu erstellen"? Warum kann der xaml-Designer in VS 2010 das UserControl sogar darstellen, obwohl die Ressourcendefintionen eigentlich gar nicht bekannt ist?

Trotz der offenen Fragen steht VS 2012 nun in einem neuen Licht da: Ohne den Versuch den Code mit VS 2012 zu compilieren, wäre der Fehler weiter unerkannt geblieben (was im Grunde ja nicht schlimm war). Es scheint aber so zu sein, das der xaml-Designer von VS 2012 eben doch genauer hinschaut beim Darstellen eines UserControls als VS 2010 es gemacht hat.

"Hübsch" finde ich VS 2012 aber trotzdem nicht...
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: Mi 10.10.12 11:07 
Fader Beigeschmack? Der alte Designer hatte ja scheinbar einen Bug und ist nun behoben. Und das missfällt dir?

Das Kompilat aus VS2010 ohne denn richtigen Verweis war auch lauffähig? Ich kann mir ja noch vorstellen das die ganzen Assemblies in den Visual Studio Prozessraum geladen wurden weil sie Teil der Solution waren und deshalb der Designer funktionierte obwohl der Verweis eigentlich fehlte. Aber das eigentliche Kompilat funktionierte auch?
navigato Threadstarter
Hält's aus hier
Beiträge: 14
Erhaltene Danke: 1

Win7
C#,Firebird
BeitragVerfasst: Mi 10.10.12 14:16 
Zitat:
Fader Beigeschmack? Der alte Designer hatte ja scheinbar einen Bug und ist nun behoben. Und das missfällt dir?

Nein, natürlch nicht!!! Aber ich finde es irgendwie unglaublich, dass es so ist...

Zitat:
Das Kompilat aus VS2010 ohne denn richtigen Verweis war auch lauffähig?

Ja, das haben bei uns mehrere Personen mit verschiedenen Rechner ausprobiert! Allerdings hatten alle die gleiche VS-Version...

Zitat:
Ich kann mir ja noch vorstellen das die ganzen Assemblies in den Visual Studio Prozessraum geladen wurden weil sie Teil der Solution waren und deshalb der Designer funktionierte obwohl der Verweis eigentlich fehlte.

Das klingt nach einem Ansatz!

Zitat:
Aber das eigentliche Kompilat funktionierte auch?

Ja! Sowohl aus dem Debugger heraus gestartet, als auch durch Ausführen der fertigen Exe.