Ich habe 10 Datensätze von Daten in einer DataTable, die 3 Felder "Foo", "Bar" und "Baz" hat.
Wenn ich diese Verbindung in ein DataGridView verbinde, sehe ich 10 Zeilen und 3 Spalten, und die Spaltenköpfe zeigen die Namen der Felder an.
Ich frage mich, wie einfach es ist, die Zeilen und Spalten umzukehren, so dass ich mit den gleichen Daten drei Zeilen und zehn Spalten habe, wobei Feldnamen in den Zeilenköpfen angezeigt werden.
Ich kann manuell einige Dinge tun, wie zum Beispiel eine OnPaint-Methode überschreiben und die Feldnamen direkt in die Zeilenkopfzellen zeichnen, aber ich suche etwas Automatisierteres.
Auch hier gibt es einen Vorschlag, die Werte manuell zu vertauschen, aber wenn ich nicht alle Werte für Strings mache, wird das nicht funktionieren. 3 Spalten in einer Datentabelle - Foo, Bar und Baz der Typen int, float und string werden einfach nicht transponiert.
Selbst wenn ich alle diese manuellen Änderungen vorgenommen habe, haben meine Datenraster CheckBox-Spalten, ComboBox-Spalten - es existiert kein solches Gegenstück - es gibt keine CheckBox-Zeile oder ComboBox-Zeile. Wo ich dem Compiler gerade sagen muss "Add a ComboBoxColumn" müsste ich neu schreiben, damit jede Zelle einzeln generiert wird.
Idealerweise hätte ich gerne eine TransposableDataGridView, die die gesamte Funktionalität der DataGridView mit einer zusätzlichen bool-Eigenschaft "Transposed" zur Verfügung stellt. Auf diese Weise könnte ich meinen gesamten Code genau so lassen, wie er ist - ich würde nichts außer dem Typ des Rasters ändern müssen.
Wenn nichts derartiges existiert, muss ich vielleicht einfach hingehen und es schreiben. (Sollte nur ein Jahr oder so dauern!:)
Sie können eine neue DataTable erstellen, die entsprechende Anzahl von Spalten hinzufügen und dann Werte von einer Tabelle in die andere kopieren, nur Zeilen und Spalten vertauschen.
Ich denke nicht, dass Sie den Zeilenkopf auf die gleiche Weise wie den Spaltenkopf setzen können (oder zumindest weiß ich nicht wie), so dass Sie die Feldnamen in eine separate Spalte einfügen können.
%Vor%Ich verwende das Developer Expres Vertical Grid . Es ist so, als ob Sie ein gedrehtes Gitter wünschen. Es erlaubt auch einen anderen Editor pro Zeile.
Tags und Links c# winforms datagridview