Laden...

Format für Währungen im DataGridView konfigurieren

Erstellt von nieselfriem vor 8 Jahren Letzter Beitrag vor 8 Jahren 1.502 Views
N
nieselfriem Themenstarter:in
44 Beiträge seit 2004
vor 8 Jahren
Format für Währungen im DataGridView konfigurieren

public DataTable loadMatImpTable(String query)
        {
            myConn.Open();
            SQLiteCommand cmd = new SQLiteCommand(query, myConn);
            SQLiteDataAdapter sda = new SQLiteDataAdapter();
            sda.SelectCommand = cmd;
            DataTable dt= new DataTable();
            sda.Fill(dt);
            return dt;

        }

Das DataGridview befülle ic dann wie folgt:


DataTable dt = lt.loadMatImpTable(queryMat);
this.matExpDataGridVW.Columns["Preis"].DefaultCellStyle.Format = "c"; //Greift nicht
this.matDataGridVW.Rows.Clear();
foreach (DataRow item in dt.Rows)
{
                int n = matDataGridVW.Rows.Add();
                matDataGridVW.Rows[n].Cells[0].Value = false;
                matDataGridVW.Rows[n].Cells[1].Value = item["MaterialID"].ToString();
                matDataGridVW.Rows[n].Cells[2].Value = item["Name"].ToString();
                matDataGridVW.Rows[n].Cells[3].Value = item["Preis"].ToString();

}

Nun möchte ich die Spalte[3] bzw. ["Preis"] als Euro/Währung ausgeben lassen. Das greift nur leider nicht. Ich habe es auch schon probiert, dies in der Form.Designers.cs zu konfigurieren. Interessanterweise hat dies funktioniert, als ich die Tabellen über eine BindingSource als Datasource befüllt habe.

Wo und wie kann ich in der obigen Implementierung das Format der Spalte für Währungen konfigurieren?

VG niesel

S
322 Beiträge seit 2007
vor 8 Jahren

Hallo niesel,

ich denke dass es daran liegt dass Du in der Spalte "Preis" einen String ablegst und kein double/decimal... d.h. mach das ".ToString()" weg dann wird es vielleicht funktionieren.

Gruß
steffen

N
nieselfriem Themenstarter:in
44 Beiträge seit 2004
vor 8 Jahren

Das war es 😄

Danke!

VG niesel

F
10.010 Beiträge seit 2004
vor 8 Jahren

Und hör damit auf die Daten uns Grid zu friemeln.

matDataGridVW.DataSource = dt;

reicht vollkommen aus.

N
nieselfriem Themenstarter:in
44 Beiträge seit 2004
vor 8 Jahren

Das habe ich aus einem Tutorial, welches sich damit beschäftigt eine Selectbox in dieses View zu integrieren. Ich geh mal davon aus, dass der Autor dieses Tutorials aus diesem Grund diesen Weg gewählt hat.

16.834 Beiträge seit 2008
vor 8 Jahren

Bei WinForms sind viele viele Tutorials vor allem bei DataBinding mangelhaft.
Soviel nur als Hinweis..