Frage

Erstellen eines benutzerdefinierten Business-Objekt in einem Datagridview wirkt Wunder zu gleiten ... außer ich nicht von einer programmatischen Art und Weise denken kann, die Spaltenreihenfolge zu setzen.

Muss ich sie ein manuell wieder um einen von Hand zu haben nur eine schönere Art zu bekommen, oder gibt es einige kryptische versteckt Attribut kann ich verwenden?

War es hilfreich?

Lösung

Jede Datagridviewcolumn als Displayindex der Immobilie, die jederzeit angewendet werden kann und funktioniert sogar mit Autogeneratecolumns auf true gesetzt.

dataGridView1.Columns["colName"].DisplayIndex = 0;
dataGridView1.Columns["colAnotherColumn"].DisplayIndex = 1;

Andere Tipps

Ich gehe davon aus, dass aktuell eingestellte AutoGenerateColumns true. Der einzige Weg, ich weiß, die Reihenfolge der Spalten zu steuern ist AutoGenerateColumns einstellen false und, wie Sie gesagt haben, manuell die Spalten hinzufügen.

EDIT:


ich in eine vage Erinnerung an einen anderen Weg sah einfach, dies zu tun und denken, dass Sie die GridView Kontrolle des ColumnsGenerator Eigenschaft, die ein IAutoFieldGenerator Objekt nimmt schauen Sie in möchten vielleicht. Diese Schnittstelle hat eine Methode GenerateFields' which takes aControl(theGrid) and returns an ICollection `genannt (von Feldern).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top