Announcement

Collapse
No announcement yet.

Datumsformat im GridView

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Datumsformat im GridView

    Hallo,

    habe ein Problem mit der Darstellung eines Datums in einem Gridview. Ist zwar ASP.NET aber ich denke, dass die Datumsformatierung in VB.NET stattfindet, deswegen habe ich dieses Forum gewählt.

    Also ich habe eine Funktion die die einen Ergebnis-Ref-Cursor aus einer Oracle DB erhält. In jedem Datensatz befinden sich 3 Datumsangaben. Das Gridview stelle ich folgendermaßen dar:
    Code:
    Dim myComman As New OracleCommand("StoredProcedureXY")
    Dim myAdapter As OracleDataAdapter
    Dim ds As New DataSet
    [...]
    myAdapter = New OracleDataAdapter(myComman)
    myAdapter.Fill(ds)
    [...]
    GridView1.DataSource = ds.Tables(0)
    DataBind()
    Das Datum ist in der Ausgabe im Format TT.MM.JJJJ HH:MM:SS
    Das Format hätte ich aber gerne folgendermaßen JJJJ-MM-TT und ohne Zeit.
    Hat jemand eine Idee?
    Danke für eure Zeit

    Gruß
    Woody
    Zuletzt editiert von WoodyWut; 13.08.2008, 11:41.

  • #2
    Hallo Woody,

    Leider kann ich dir nur einen Ansatz geben, da ich nur mir MySql und Vb.net arbeite.

    Entweder passt du deine StoredProcedure an indem du die einzelnen Spalten die ein Datum enthalten in deiner SELECT-Anweisung Explizit angibst und mit dem FORMAT-Befehl die Ausgabe anpasst.

    MySql:
    Code:
    SELECT DATE_FORMAT(DatumSpalte, '%d-%m-%Y') AS FormatiertesDatum
    FROM ....
    Oder du erstellst deie Spalten deiner DataGridView selbst und legst da das Format deiner Datum-Spalte fest.

    Code:
    'Unterdrückt Neuzeichnen-Ereignisse bis zum
    'nächsten ResumeLayout; dadurch geht der Aufbau
    'der Elemente schneller und wackelt nicht.
    Me.DataGridView.SuspendLayout()
    
    'Der DataGridView mitteilen, dass es die Spalten nicht Automatisch erstellen soll
    DataGridView.AutoGenerateColumns = False
    
    'Die Datenquelle an die DataGridView hängen
    DataGridView.DataSource = ds.Tables(0)
    
    Dim DatumSpalte As New DataGridViewTextBoxColumn
    DatumSpalte.Name = "DatumSpalte"
    DatumSpalte.DataPropertyName = "" <-- Hier das Feld aus deiner Tabelle
    DatumSpalte.HeaderText = "Datum1"
    DatumSpalte.DefaultCellStyle.Format = "yyyy-MM-dd"
    DataGridView.Columns.Add(DatumSpalte)
    
    'Aufbau der GridView ist beendet.
    DataGridView.ResumeLayout()
    Hoffe du kannst was damit anfangen.

    Gruß,
    Jeff

    Comment


    • #3
      Jo danke für die tipps

      das angepasste GridView fluppt wunderbar. Das mit der angepassten Stored procedure war auch schon meine idee, da is cheffe aber leider dagegen... "Die SP gibt ein Datum zurück wie es in der DB steht und NICHTS anderes" :-P

      Danke nochmal für den Tipp

      Comment

      Working...
      X