2012-04-03 7 views
2

Ich habe eine Datagridview, die AutoGenerateColumns in Winforms verwendet. Es gibt eine Datumsspalte und dann 1-16 Datenspalten mit numerischen Werten. Ich möchte, dass alle diese 16 Datenspalten auf 4 Dezimalstellen formatiert werden.DataGridView Format Dezimalwerte mit AutoGenerateColumns

As per this post setzen Sie den DefaultCellStyle über den Designer. Ich habe das manuell gemacht, um das gewünschte Format zu erhalten. Ich habe dies in Form Konstruktor:

this.dgv_PreviewGrid.DefaultCellStyle.Format = "N4"; 

Ich habe versucht, es auf diese Weise einstellen und auch versucht, manuell auf jeder Spalte auf Databindingcomplete-Ereignisse. Nichts passiert! Die App verzögert sich, als ob sie die Rundung durchführt, tut es aber nicht.

Gibt es auch eine Verbindung zu msdn oder etwas mit einer Liste der DefaultCellStyle-Formate? Konnte sie nicht finden.

EDIT: Ich fand, dass mit Format "D4" anstelle von "N4" (Dezimal vs. Zahl) -> ist wahrscheinlich das Format, das ich will, aber es funktioniert immer noch nicht.

Antwort

3

Die gewünschte MSDN-Seite lautet Standard Numeric Format Strings.

Sie möchten den Formatbezeichner N oder F, nicht D. D ist für Ganzzahlen.

Das Festlegen von grid.DefaultCellStyle.Format sollte funktionieren, aber da Sie eine Datumsspalte haben, müssen Sie den DefaultCellStyle dieser Spalte überschreiben oder die Daten werden nicht angezeigt.

Was ist der tatsächliche Typ der numerischen Eigenschaft auf Ihrer Datenquelle? Bist du sicher, dass es keine Zeichenfolge ist? Wie bevölkern Sie das DataGridView?

Ohne weitere Informationen ist es schwierig, das Problem zu erraten. Es kann hilfreich sein, wenn Sie den Code anzeigen, der das DataGridView auffüllt.

+0

Ahh guten Fang dort @IgbyLargeman. Scheint, dass die Datentabelle anfänglich einen Decimal-Wert verwendet hat, aber in meinem Code in eine Zeichenfolge geändert wurde. Vielen Dank! – ImGreg

+0

Danke auch für die MSDN-Seite, die den ganzen Vormittag danach gesucht hat! hahah – ImGreg

+0

Es ist _always_ in meinem Browser-Verlauf. :) –