Ich habe mich gefragt, wie ich einen Textblock an eine Variable innerhalb meiner C # -Klasse binden könnte.
Grundsätzlich habe ich eine "cart" -Variable in meiner .cs-Datei. Innerhalb dieser Warenkorbklasse habe ich Zugriff auf die verschiedenen Summen.
Folgendes habe ich für die Bindung, aber es scheint nicht an die Variable zu binden ...
%Vor%Was ist der richtige Weg? Nochmals vielen Dank für die Hilfe!
Wenn Sie weiterhin möchten, dass die TextBox automatisch aktualisiert wird, wenn sich Ihre Warenkorbklasse ändert, muss Ihre Klasse die INotifyPropertyChanged
-Schnittstelle implementieren:
ElementName
in der Bindung wird verwendet, um auf andere Steuerelemente zu verweisen, nicht auf Variablen im Code dahinter. Um Variablen im Code dahinter zu referenzieren, müssen Sie diese Variable der Eigenschaft DataContext
eines Steuerelements zuweisen.
Ersetzen Sie jedes Vorkommen der folgenden Codezeile:
%Vor%mit:
%Vor%Und schreiben Sie in Ihrem Window-Konstruktor oder Load-Ereignis folgenden Code:
%Vor%Zwei Lösungen ..
Erste Lösung:
Setzen Sie die cart
als DataSource in Ihrem Code hinter:
Und binden Sie es wie folgt:
%Vor%Zweite Lösung:
Binden Sie mit einer ElementName-Bindung an Ihr Root-Steuerelement, und rufen Sie den Einkaufswagen durch eine Eigenschaft für dieses Steuerelement:
Nennen Sie Ihr Stamm- / Eltern-Steuerelement, wo der Warenkorb ein Propery ist:
%Vor%Binde es so an:
%Vor%Bitte beachten Sie, dass der Warenkorb eine Eigenschaft Ihres Benutzersteuerelements sein muss und kein Feld
Sie müssen Ihre Klasse als Datenquelle für Ihr Formular festlegen. Siehe auch diese Frage .
Tags und Links wpf data-binding textblock