Datum im DataGridView [VC++]

Trombo79

Grünschnabel
Hallo,

ich möchte in einer Spalte eines DataGridView Datumsangaben vom Typ DateTime anzeigen, habe aber das Problem, dass sie immer im Format "dd.MM.yyyy hh:mm:ss" dargestellt werden (Bsp: "23.11.2004 00:00:00). Ich möchte allerdings nur das Datum ohne die Zeitangabe anzeigen lassen, habe aber keine Ahnung wie das funktioniert, hab schon alles mögliche probiert. Ich könnte sie zwar als String konvertieren, aber dann funktioniert die Sortierung der Daten nicht mehr korrekt, deshalb scheidet die Möglichkeit aus. Weiß jemand Rat?

Vielen Dank schonmal im Voraus!

mfg
Trombo
 
Wenn du Date statt DateTime benutzt hast du dieses Problem nicht :)

Hier hast du mal eine Liste der Datumsformate und deren Ausgaben :

DATETIME = '0000-00-00 00:00:00'
DATE = '0000-00-00'
TIMESTAMP = '0000-00-00 00:00:00'
TIME = '00:00:00'
YEAR = 0000

Sind nicht alle aber die meist gebrauchten.
 
Das mit dem Datentyp "Date" hab ich auch schon probiert, aber den Datentyp scheint es nicht zu geben :(! Der Codeausschnitt
Code:
   ...
   Date datum(2007,11,23);
   rows->Add("Trombo", 24, datum);
   ...
ergibt folgenden Compilerfehler:
Code:
   error C2065: 'Date': nichtdeklarierter Bezeichner

Gibt es den Datentyp in Visual C++ 2008 EE nicht oder muss ich einen bestimmten Namespace einbinden? Oder ist etwas falsch an der Deklaration von Datum (mit DateTime compiliert er einwandfrei)?
Falls es den Datentyp nicht gibt: Was gibt es sonst für Möglichkeiten um dieses Problem zu beheben?

Danke und viele Grüße
Trombo
 
Hi

Die Klasse DataGridViewColumn besitzt das Property DefaultCellStyle. Da kannst du unter Format das Datumsformat angeben.

Datentypen (Klassen) wie Date oder Time gibt es in .NET nicht (es sei denn, du schreibst sie dir), da die Struktur DateTime alles liefert um die entsprechenden Werte abzufragen und darzustellen
 

Neue Beiträge

Zurück