none
DataGridView Style setzen ( performance problem) RRS feed

  • Frage

  • Hallo,

    ich möchte bestimmte Zeilen eines DGV anders darstellen. Dazu weise ich den Zeile ndas entsprechende Style zu.

     

    foreach
     (DataGridViewCell cell in
     this
    .dataGridView1.Rows[i].Cells)
     if
    (...)cell.Style = meinStyle;
    

     

    Das setzen dauert allerdings sehr lang. Bei ein paarhundert Zeilen kann das schon eine Minute dauert bis er alle Zeilen durchgegangen ist.

    Das neu belegen des DefaultCellStye dauert genauso lange.

     

    Ich vermute ja das gesamte DGV führt bei jedem setzen des Styles ein update durch. Wie kann ich das verhindern sodass sich das DGV erst nach dem durchgehen aller Zeilen neu berechnet?

     

    danke.

    Sonntag, 21. November 2010 17:56

Antworten

  • Habe das Problem gefunden.

     

    Beziehungsweise eher einen workaround.

     

    Anstatt des kompletten Styles setze ich jetzt direkt die Schriftfarbe des Styles.

    cell.Style.ForeColor = myColor;
    

    Und Schwupps, schon braucht das DGV statt einer Minute nur noch eine Sekunde zum laden -_-

    Sonntag, 21. November 2010 19:03

Alle Antworten