| |
| In diesem Forum haben Sie die Möglichkeit Kommentare, Fragen und Verbesserungsvorschläge zu den im vb@rchiv gelisteten Tipps und Workshops zu posten.
Hinweis: Ein neues Thema kann immer nur über die jeweilige Tipps & Tricks bzw. Workshop Seite eröffnet werden! | Fragen zu Tipps & Tricks und Workshops im vb@rchivTipp 2497: Funktion zum Formatieren einer DatagridView-Spalte mit dezimal Alignment | | | Autor: Manfred X | Tipp anzeigenDatum: 02.06.19 17:34 |
| In den meisten Fällen ist es einfacher und aussagekräftiger,
die Formatierung von numerischen Werten über den CellStyle
des Datagridview-Controls einzurichten (Format, Ausrichtung).
Public Class frmDGVFormatNumber
Dim dt As New DataTable
Dim bs As New BindingSource
Dim WithEvents dgv As New DataGridView With
{.Parent = Me, .DataSource = bs,
.Location = New Point(10, 10), .Size = New Drawing.Size(300, 300)}
Private Sub frmDGVFormatNumber_Load(sender As Object,
e As EventArgs) Handles MyBase.Load
'Testspalten
With dt.Columns
.Add("number (int)", GetType(Integer))
.Add("number (dec)", GetType(Decimal))
.Add("number (dbl)", GetType(Double))
End With
'zufällige Testdaten
Dim dec As Decimal, dbl As Double
Dim rndm As New Random(1234), g As Integer
For i As Integer = 1 To 200
g = rndm.Next(0, 5)
dec = CDec(rndm.NextDouble)
dec = CDec(dec * 10 ^ g)
g = rndm.Next(0, 5)
dbl = rndm.NextDouble
dbl = dbl * 10 ^ g
If rndm.NextDouble < 0.5 Then dbl *= -1
dt.Rows.Add(i, dec, dbl)
Next i
'Datenbindung
bs.DataSource = dt
'Ausrichtung und Formatierung
For i As Integer = 0 To 2
With dgv.Columns(i)
.DefaultCellStyle.Alignment =
DataGridViewContentAlignment.MiddleRight
If .ValueType.Equals(GetType(Integer)) Then
.DefaultCellStyle.Format = "#####0"
Else
.DefaultCellStyle.Format = "#####0.00000"
End If
End With
Next i
End Sub
End Class | |
Re: Funktion zum Formatieren einer DatagridView-Spalte mit dezimal Alignment | | | Autor: thuring | Datum: 16.07.19 10:07 |
| Die Zeile
.DefaultCellStyle.Format = "#####0.00000"
bringt NICHT den gewünschten Effekt für Dezimal-Ausrichtung, wenn bspw. unterschiedliche Anzahlen von Nachkommastellen im Dezimalwert vorhanden sind.
Salzburger | |
Re: Funktion zum Formatieren einer DatagridView-Spalte mit dezimal Alignment | | | Autor: Manfred X | Datum: 16.07.19 23:34 |
| Hallo!
Bei der Darstellung von Dezimalzahlen in einer Spalte
macht es gewöhnlich keinen Sinn, unterschiedliche Anzahlen
von Nachkommastellen anzuzeigen.
Sind Deine Daten keine Dezimalbrüche? Steht das Komma in der
Ziffernfolge für eine andere Bedeutung? | |
Re: Funktion zum Formatieren einer DatagridView-Spalte mit dezimal Alignment | | | Autor: thuring | Datum: 17.07.19 08:39 |
| Über Sinn und Unsinn brauchen wir hier nicht zu diskutieren.
Beispiel: Die Umrechnungskurse zum Euro der EZB
Unterschiedliche Anzahlen von Nachkommastellen sind zumindest gebräuchlich.
Salzburger | |
Re: Funktion zum Formatieren einer DatagridView-Spalte mit dezimal Alignment | | | Autor: Manfred X | Datum: 17.07.19 12:33 |
| Im dem Fall der Währungsfaktoren ist eine Formatierung am Dezimalpunkt
nicht anzuraten.
Durch diese Formatierung wird der Eindruck von einer Vergleichbarkeit
der Werte innerhalb der Spalte erzeugt. Es steht aber jeder Wert
"für sich" und ist nicht auf die anderen Umrechnungsfaktoren zu beziehen.
https://wechselkurse-euro.de/
Die zentrierte Darstellung erscheint mir in dem Fall zweckmäßig. | |
Re: Funktion zum Formatieren einer DatagridView-Spalte mit dezimal Alignment | | | Autor: thuring | Datum: 17.07.19 13:08 |
| Mir allerdings erscheint die dezimale Ausrichtung als wesentlich übersichtlicher im Gesamterscheinungsbild der Tabelle.
Salzburger | |
Re: Funktion zum Formatieren einer DatagridView-Spalte mit dezimal Alignment | | | Autor: thuring | Datum: 25.07.19 09:15 |
| Im Übrigen gibt es in Office-Word den Dezimal-Tabstopp, den man in Tabellen folgendermaßen verwenden kann:
https://www.vbarchiv.net/tipps/details.php?id=2407
AddDecimalTabToCell
Salzburger | |
Re: Funktion zum Formatieren einer DatagridView-Spalte mit dezimal Alignment | | | Autor: thuring | Datum: 05.08.19 16:37 |
| Bitte anschauen:
http://www.ecb.int/stats/eurofxref/eurofxref-daily.xml
Salzburger | |
| Sie sind nicht angemeldet! Um einen neuen Beitrag schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevISDN 1.0
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats sevZIP40 Pro DLL
Zippen und Unzippen wie die Profis!
Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. Weitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|