Bind Liste der Klassen in DataGridView

7

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?

    
Yuriy 10.11.2010, 10:45
quelle

4 Antworten

17

Wie wäre es mit der Bindung an einen anonymen Typ:

%Vor%

Werden Sie die Daten in der Datagridview aktualisieren?

    
Jla 10.11.2010, 13:20
quelle
2

Dies zu tun, ohne das Modell zu ändern, ist außergewöhnlich schwierig (aber möglich) und erfordert ICustomTypeDescriptor oder TypeDescriptionProvider und eine benutzerdefinierte PropertyDescriptor . Um ehrlich zu sein: es ist es nicht wert.

Fügen Sie einfach Pass-Thru-Eigenschaften hinzu:

%Vor%     
Marc Gravell 10.11.2010 10:51
quelle
1

Mit LINQ ist es ganz einfach, wie Sie in Diese Antwort

Hier ist eine einfache Implementierung von etwas, das ich an Datagridview anhängen musste.

%Vor%     
user890332 29.12.2011 21:59
quelle
0

Nein, das können Sie nicht sofort machen. Sie müssen eine benutzerdefinierte Bindungsquelle (höchstwahrscheinlich mit spezieller Logik für Ihren speziellen Zweck) schreiben, um das "Bohren" tiefer als nur eine Ebene von Eigenschaften zu ermöglichen.

    
leppie 10.11.2010 10:50
quelle