Laden...

DataGridView - Nachkommastellen

Erstellt von Maddinel vor 17 Jahren Letzter Beitrag vor 16 Jahren 5.678 Views
Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 17 Jahren
DataGridView - Nachkommastellen

Hi,

für meine Anwendung verwende ich als Datenquelle eine Access-Datei, welche u.a. in einer Tabelle eine Spalte mit dem zugewiesenen Typ "Währung" (Format: z.B. 25,90 €) hat.
Ich kann also z.B. 25,9 eingeben und in der Datenbank wird trotzdem 25,90 € angezeigt. Wenn ich die Spalte aber in meiner Anwendung auslese und in einem DataGridView anzeigen will, dann wird wieder einfach nur 25,9 angezeigt. Auf das Eurozeichen kann ich ja verzichten, aber die zweite Nachkomastelle hätte ich schon ganz gerne ohne das ich sie ständig per Hand überall dranbasteln muss.

Kann ich das im DataGridView irgendwie einstellen?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

139 Beiträge seit 2006
vor 17 Jahren

Aber wofür soll das gut sein? – Advanced Computing Systems Division von IBM, 1968, zum Microchip

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 17 Jahren

Danke, dass ist ja genau das Richtige, nur wie kann die der Spalte sagen, dass sie das so darstellen soll? Oder muss ich das etwa doch irgendwie von hand bei jedem Wert einbauen?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

139 Beiträge seit 2006
vor 17 Jahren

Am besten ist, du lässt in einer Schleife alle Strings formatieren...
Ich wüste nichts anderes...

Aber wofür soll das gut sein? – Advanced Computing Systems Division von IBM, 1968, zum Microchip

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 17 Jahren

Oh schade, ich dachte dafür gäbe es eine elegantere Lösung.

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 17 Jahren

Aber wie soll ich denn die Werte durchlaufen? Die sind doch im DataGridView bzw im DataSet.
Die Lösung gefällt mir so noch garnicht.

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

A
38 Beiträge seit 2005
vor 17 Jahren

Öhm also ich würds ganz anderst machen, ich würde im DataGridView auf die Eigenschaften der Geldspalte gehen und dort "DataGridViewCellStyle { NullValue=0,00, Format=C2, Alignment=MiddleRight }" einstellen 🙂

C2 = Währung

Hoffe das hilft dir mehr 😉

Greets Azzy

[**(¯`·._.·[The Higher Community]·._.·´¯)**](http://www.nexus-der-macht.de/)
139 Beiträge seit 2006
vor 17 Jahren

Jetzt weiß ich auch wieder was mehr ~+ habe gerade

			string newString;
			
			foreach (System.Windows.Forms.DataGridViewRow row in dataGridView1.Rows)
			{
				foreach( System.Windows.Forms.DataGridViewCell  cell in row.Cells )
				{
					try
					{
						newString = string.Format("{0:c}", Double.Parse(cell.Value.ToString()));
						cell.Value = newString;
					}
					catch
					{
						
					}
				}
			}

geschrieben...

Aber wofür soll das gut sein? – Advanced Computing Systems Division von IBM, 1968, zum Microchip

915 Beiträge seit 2006
vor 17 Jahren

Hmm, wenn noch etwas mehr reinbauen möchtest nutzt System.Globalization.NumberFormatInfo .String("C", oNumberFormatInfo);

Dann bekommst auch Euro rein usw. hat den Vorteil das wenn mal Sprache ändern musst das ganze nur noch an einer Stelle zu ändern brauchst. 😃

Auch das von Azrael Masters mit verwenden, dann spaarst dir die Schleife.

Wie vernichtet stand Andreas unter den flammenden Augen seiner Kunden.
Ihm war's, als stünde des Schicksals dunkle Wetterwolke über seinem Haupte X(

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 17 Jahren

Oh super, das ihr euch doch noch weiter Gedanken gemacht habt.
Das ist jetzt genau das was ich gesucht habe.

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

t
219 Beiträge seit 2007
vor 16 Jahren

Hallo,

hierzu hätte ich auch noch eine Frage:

Ich arbeite mit einem DGV, eine Spalte hat eben jene oben genannten Währungsformatierungen. Dem DGV werden duch manuelles Databinding Zeilen hinzugefügt. Zusätzlich gibt es ein CellEndEdit Event, damit der Benutzer einige Zellen editieren kann. Nun ist es so, dass die Währungsformatierung erst angezeigt wird, nachdem das CellEndEdit Ereignis gefeuert wurde. Wie kann ich erreichen dass dies gleich, also nach dem hinzufügen der Zeile geschieht?

Gruß & sonnigen Sonntag,

thepixel

Mfg, Christian