Ich versuche eine gute Möglichkeit zu finden MVP in klassischen Winforms zu implementieren, und ein paar Lösungen, die ich gekommen bin (zB http://codebetter.com/blogs/jeremy.miller/archive/2007/05/25/build-you-own-cab-part-3-the-supervising-controller-pattern.aspx) sprechen über die Verwendung der Datenbindung zwischen dem Modell und die Aussicht. Ich habe noch nie Datenbindung verwendet, also dachte ich, ich würde es versuchen.Datenbindung mit INotifyPropertyChanged (.Net)
Das Problem ist, kann ich nicht herausfinden, wie einfache Bindung (z. B. eine Zeichenfolge in meiner Modellklasse zu einem Textfeld im Formular) mit INotifyPropertyChanged, wie im obigen Artikel vorgeschlagen. Ich dachte, ich hätte es geklappt (das in der Form ist, in der ‚Modell‘ eine Instanz meiner Modellklasse ist):
txtModelName.DataBindings.Add(new Binding("Text", model, "Name"));
Aber ich merkte bald, dass dies nicht INotifyPropertyChanged überhaupt verwendet hat - es funktioniert gut, ob ich diese Schnittstelle auf meinem Modell implementieren oder nicht. Nicht ein Problem an sich, aber es funktioniert nicht so, wie ich es will, das Hauptproblem ist, dass es 2-Wege-Bindung ist (Ich möchte nur von das Objekt zu das Formular binden).
Ich gehe davon aus, dass es entweder eine andere Art der Bindung mit INotifyPropertyChanged gibt, oder dass die oben beschriebene Bindung so eingestellt werden kann, dass sie nur in eine Richtung funktioniert - kann mir hier jemand helfen oder auf ein anständiges Beispiel hinweisen?
Ich benutze. Net 3.5 mit klassischen Winforms, nicht WPF.
Dank