Hi,
ich wollte etwas neues versuchen, weiß auch nicht, ob es so funktioniert wie ich es mir vorstelle.
Ich habe eine View und ein ViewModel. In der View habe ich ein Control, welches in der View verändert wird. Nun möchte ich das komplette Control an das ViewModel übergeben. Ich habe einen Button angelegt und rufe die Methode via Message.Attach="Methode(Controlname)" auf.
Jedoch funktioniert es nicht, dass ich das Object übergebe. Properties des Controls kann ich übergeben, aber nicht das komplette Control.
Nun meine Frage: Geht das? Wenn nein, wie kann man es sonst lösen, ohne CodeBehind im Window?
Hallo,
Caliburn ist ja nen MVVM Framework, und mit dem was du vorhast, hebelst du das Hauptprinzip von MVVM - die Trennung von GUI und Daten - aus. Es gibt keinen Sinn ein Control in ein ViewModel zu übergeben. Was hast du denn genau vor? Sinn macht nur die Daten, welches das Control darstellt, zu übergeben.
Baka wa shinanakya naoranai.
Mein XING Profil.
Hallo talla,
das Control, das ich in der View habe, soll ausgedruckt werden.
Im ViewModel habe ich eine Methode, um Controls direkt drucken zu können. Als Parameter der Methode wird das entsprechende Control übergeben. Um dies jedoch mit MVVM "bestmöglich" umsetzen zu können, wollte ich CodeBehind vermeiden und so eben eine generische Methode zum Drucken von Controls zentral halten und über die Views ansprechen.
Da solltest du dich eher von der VB6 oder Access Herangehensweise verabschieden irgendwelche Controls zu drucken.
Drucke richtig und schon ist das nicht mehr nötig.