Laden...

DataGridView: Spaltenbreite an Inhalt anpassen

3 Antworten
7,744 Aufrufe
Letzter Beitrag: vor 14 Jahren
Hinweis von herbivore vor 14 Jahren

Abgeteilt von DataGridView Sortieren im Virtual Mode

Ich bekomme es nicht hin, dass die ColumnHeader sich automatisch an den Inhalt anpassen.

Ich habe schon einiges probiert z.B. folgende Werte im DGV gesetzt.

 this.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize;

            this.AllowUserToResizeColumns = true;

            this.AllowUserToResizeRows = true;

Dies passt zwar die Höhe des Headers automatisch an, jedoch kann ich diesen als Nutzer nicht mehr verändern.

Ich könnte im CellValueNeeded-Event die Spalten anpassen...aber da das Event für jede Zelle gefeuert wird, habe ich bedenken.

Was sollte ich tun, um die Anpassung der Spaltenheaders zu erreichen (der User muss weiterhin verschieben können)?

versuch mal:
EnableHeadersVisualStyles = false;
Bin mir aber nicht sicher, kann grad net testen...

Viele Grüße, Oli

Danke für die Antwort, aber das hat nur die Darstellung der Sortierpfeile verändert.

Wenn ich ein Standard-DGV aus der Toolbox auf ein Form ziehe geht das doch auch....ich werd noch verrückt hier 🤔

EDIT:
So...hab's hinbekommen:

im DGV direkt mache ich nun:

this.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;

und beim dynamischen Erstellen der Spalten:

dataGridView.AutoResizeColumns();
dataGridView.AutoResizeColumnHeadersHeight();