Zum Inhalt springen

DataGridView DefaulCellStyle setzen


Nokinger

Empfohlene Beiträge

Hallo,

hab da mal ne frage bzw. ich suche nach einer Bestätigung!

Ich verwende in einem c# Projekt ein DataGridView, welches ich mit Daten befülle.

Dabei sind für das DataGridView bereits 5 Spalten Vorgesehen.

mittels > DataGridView.RowsDefaultCellStyle setze ich den DefaultStyle jeder Zelle.

mittels > DataGridView. AlternatingRowsDefaultCellStyle alterniere ich den CellStyle.

Soweit so gut.

Nun möchte ich allerdings von einer bestimmten Spalte das Alignment ändern: ich dachte das kann ich lösen in dem ich folgende Zeile einbinde:

DataGridView.Column[idx].DefaultCellStyle.Alignment = MiddleCenter

leider funktioniert das nicht...

Laut MSDN verwendet das DGV zuerst die Zeilenebene als DefaultStyle, sofern hier nichts gesetzt ist wird die Spalteneinstellung verwendet.

Wie ich es verstehe kann ich den DefaultStyle einer Column nicht setzen sofern ich den RowDefaultCellStyle gesetzt habe!?

Frage1: Ist das richtig oder falsch?

Nur leider benötigte ich die RowDefaultCellStyle da ich das ganze alternierend haben möchte!

Aus Performance gründen und wie auch MS als Richtlinie vorgibt möchte ich nicht mittels: DataGridView.Rows[idx].Cells["Name"].Style.Aligment = MiddleCenter;

jeder Zelle einen eigenen style hinterlegen.

Könnt ihr mir da ein tipp geben, wie ich das Alignment einer einzelnen Spalte Verändern kann.

Gruß

Nok

Bearbeitet von Nokinger
Link zu diesem Kommentar
Auf anderen Seiten teilen

Nun möchte ich allerdings von einer bestimmten Spalte das Alignment ändern:
Wie ist denn das Alignment in den anderen Spalten?

Wie ich es verstehe kann ich den DefaultStyle einer Column nicht setzen sofern ich den RowDefaultCellStyle gesetzt habe!?

Frage1: Ist das richtig oder falsch?

Das ist insofern falsch, als das nicht für den ganzen Style gilt, sondern für jedes einzelne Property. Wenn du also DataGridView.RowsDefaultCellStyle.Alignment gesetzt hast, wirkt sich DataGridViewColumn.DefaultCellStyle.Alignment nicht mehr aus.

Nur leider benötigte ich die RowDefaultCellStyle da ich das ganze alternierend haben möchte!
Die Frage ist, musst du auf dieser Ebene denn auch ein Alignment setzen?

Aus Performance gründen und wie auch MS als Richtlinie vorgibt möchte ich nicht mittels: DataGridView.Rows[idx].Cells["Name"].Style.Aligment = MiddleCenter;
Dann setz das Alignment nicht in DataGridView.RowsDefaultCellStyle, sondern für jede Spalte einzeln.
Link zu diesem Kommentar
Auf anderen Seiten teilen

hallo klotzkopp,

super danke für deine Antwort. Ich habe nun das Alignment in den RowDefaultCellStyle = NotSet gestellt und konnte dann in den Columns das Alignment für jede einzelne Spalte setzten!

Das er nicht den ganzen Style sondern nur die Properties forced hatte ich mir auch schon überlegt, hab dies auch getestet .... allerdings hatte ich schätzungsweiße bei diesem test noch irgendwo die Property geforced gehabt!

Danke nochmals.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...