data-binding

___ answer601350 ___

Während der WinForms-Designer dies möglicherweise nicht zulässt, haben Sie versucht, die Bindung im Code einzurichten? Ich kann mir vorstellen, dass es kein Problem gibt, eine Textbox an someCar.Tires [1] .Pressure.

zu binden     
___ tag123c ___ C # (sprich "Cis") ist eine objektorientierte Programmiersprache auf hohem Niveau, die für die Erstellung einer Vielzahl von Anwendungen entwickelt wurde, die auf dem .NET Framework (oder .NET Core) ausgeführt werden. C # ist einfach, leistungsfähig, typsicher und objektorientiert. ___ qstntxt ___

Ich brauche Hilfe / Anleitung zur WinForms-Datenbindung und ich kann Google anscheinend nicht dazu bringen, mir bei dieser Sache zu helfen.

Hier ist mein Szenario. Betrachten Sie die folgenden Klassen, die denen ähnlich sind, die ich brauche:

%Vor%

Meine Instanzen davon werden ein Objekt der Klasse Auto mit einer Liste mit vier Reifenobjekten sein. Beachten Sie, dass ich hier immer eine bekannte Anzahl von Objekten in der Liste habe.

Nun möchte ich das an ein Formular binden, das fünf Textfelder enthält. Eine Textbox mit dem Namen des Autos und eine Textbox mit jedem der Reifendrücke.

Irgendeine Idee, wie das funktioniert? Der Designer in VS scheint mir nicht zu erlauben, dies einzurichten, indem ich Listenindizes wie Reifen [0] .Pressure.

zuweise

Meine derzeitige Lösung besteht darin, an ein "BindableCar" zu binden, das wie folgt aussehen könnte:

%Vor%

aber das wird wirklich hässlich, wenn meine Liste 20 statt 4 Objekte enthält, und für jedes dieser Objekte möchte ich gegen 6 Eigenschaften binden. Das macht ein riesiges "BindableObject"!

    
___ tag123net ___ Das .NET-Framework ist ein Software-Framework, das hauptsächlich für das Microsoft Windows-Betriebssystem entwickelt wurde. Es enthält eine Implementierung der Basisklassenbibliothek, Common Language Runtime (allgemein als CLR bezeichnet), Common Type System (allgemein als CTS bezeichnet) und Dynamic Language Runtime. Es unterstützt viele Programmiersprachen, einschließlich C #, VB.NET, F # und C ++ / CLI. NICHT für Fragen zu .NET Core verwenden. ___ tag123datbinding ___ Eine allgemeine Technik, die zwei Daten- / Informationsquellen miteinander verbindet und synchronisiert. ___ tag123winforms ___ WinForms ist der informelle Name für Windows Forms, eine GUI-Klassenbibliothek in Microsoft .NET Framework und Mono. Fragen in diesem Tag sollten auch mit dem Zielframework ([.net] oder [mono]) versehen und normalerweise mit einem Programmiersprachen-Tag versehen werden. ___ answer601357 ___

Sie sollten in der Lage sein, anstelle des Designers eine Liste über Code zu erstellen. Hier ist ein Beispiel (von vor ein paar Stunden ).

    
___ qstnhdr ___ WinForms Datenbindung - Bindung an Objekte in einer Liste ___ answer601508 ___

Sie sollten beachten, dass Sie Steuerelemente an beliebige -Objekttypen binden können, die die Schnittstellen %code% , %code% oder %code% implementieren oder von Klassen erben, die diese Schnittstellen implementieren. Generische Sammlungen sind ebenfalls für diese Art der Bindung geeignet.

Diese werden intern in eine %code% Instanz konvertiert.

Lesen Sie die folgenden Links für weitere Informationen:

  1. Roadmap für Windowsforms-Datenbindung - Zeigt einen sehr umfassenden Überblick über die Implementierung und Möglichkeiten und bietet eine Vielzahl von Links zu anderen KB-Artikeln.
  2. Winforms Objektbindung - Rockford Lhotkas Artikel zu diesem Thema . Bietet eine auf Windows Forms Designer ausgerichtete Methode zur Implementierung der Datenbindung.
  3. Datenbindung mit Windows Forms 2.0 - Dieses Buch von Brian Noyes untersucht verschiedene Aspekte der Databinding, sowohl in komplexen und einfache Szenarien.
___
4
Antworten

ListBox-Element wurde nicht aktualisiert, wenn sich die Eigenschaft geändert hat

Ich habe Probleme beim Aktualisieren von Listbox mit ObservableCollection, wenn sich die Eigenschaft der Sammlung ändert (das Hinzufügen / Entfernen von Elementen aus der Liste funktioniert einwandfrei): listbox hat ItemsSource="{Binding Pat...
13.03.2013, 21:26
1
Antwort

Wie kann ich die Konverterbindung im C # -Code festlegen?

Ich bin ein Neuling in WPF und jetzt benutze ich lib xamChart eines Drittanbieters in meinem Projekt zuvor im XAML Ich habe ein Diagramm und seine Achse hat eine Einheit, die eine int Eigenschaft ist und ich habe %Vor% Das funktioniert...
28.07.2011, 10:32
11
Antworten

Logik in Get-Teil der Eigenschaft. Gute Übung?

Wenn ich meine XAML-Daten an einige Daten anschließe, benutze ich oft den "Get" -Teil einer Eigenschaft, um etwas Logik zu machen. Wie geben Sie die Summe der Summen einer Liste oder einen Scheck, wenn etwas positiv ist. Zum Beispiel: %Vor%...
30.01.2009, 15:16
5
Antworten

jQuery .on () Klicken Sie auf das Ereignis, das das dynamische Attribut 'data-' in der Liste der Schaltflächen erfasst, um den Wert an andere Funktion zu übergeben?

Ich habe eine dynamische Tabellenliste von etwa 40 Zeilen mit jeweils einer Bearbeitungsschaltfläche, die ein Datumsfeld enthält. Ich habe auch das folgende click-Ereignisskript, das versucht, an jede Schaltfläche über eine gemeinsame Klasse anz...
17.11.2013, 06:56
3
Antworten

Ist es nur ich oder ist WPF ein Durcheinander von Datenbindung und benutzerdefinierten IValueConvertern?

Ernsthaft, es scheint, als würde ich jedes Mal, wenn ich meine UI-Elemente miteinander sprechen lassen will, einen neuen, angepassten IValueConverter schreiben :(. Jemand sagt mir, dass ich es falsch mache, bitte! Beispiele: Ich wollte, d...
19.07.2009, 15:56
5
Antworten

Können Sie in C # und WPF ein Element eines Arrays an eine Objekteigenschaft binden?

Ist es beispielsweise möglich, die Text-Eigenschaft eines Textblocks an ein Element Name [2] vom Typ String zu binden?     
23.10.2010, 04:54
4
Antworten

So binden Sie eine Variable an einen Textblock

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 verschiede...
03.12.2010, 10:25
4
Antworten

Bind Liste der Klassen in DataGridView

Ich muss eine List<MyClass> myList an eine DataGridView binden. Und holen Sie sich die Ergebnistabelle mit zwei Spalten ID und Name. Code-Schnipsel: %Vor% Ist es möglich?     
10.11.2010, 10:45
2
Antworten

WPF Binding Failure-Leistungshit vs Exception

Wenn wir an eine heterogene Sammlung von Objekten binden, haben nicht alle Objekte die gleichen Eigenschaften. Im Ausgabefenster erhalten wir eine Nachricht wie:    System.Windows.Data Fehler: 39:   BindingExpression-Pfadfehler:   Die Eigensc...
07.04.2010, 00:11
3
Antworten

So verschieben Sie ein Update auf eine Bindung in WPF

Gibt es eine einfache Möglichkeit, einer Zwei-Wege-WPF-Datenbindung mitzuteilen, dass sie einige Millisekunden nach der letzten Änderung warten soll, bevor sie die Quelle mit dem neuen Eigenschaftswert aktualisiert? Ich implementiere eine Fil...
29.01.2009, 13:12