2

Ich habe ein Formular mit einem Datumswert in einem TextBox-Steuerelement. Das Formular verwendet eine Datenbindung mit einer BindingSource für eine DataSet- und eine SQL 2005 CE-Datenbank. Wo kann ich die Formatierung des Datums kontrollieren? Nirgends in den Eigenschaften auf dem Weg sah ich eine Möglichkeit, den Zeitteil zu strippen.Datengebundenes WinForms-Formular - wie formatiert man Datumsangaben?

Ich könnte es natürlich in der Datenbank tun und eine Zeichenfolge anstelle einer DateTime übergeben, aber das ist Workaround und keine Lösung.

Antwort

6

den Designer verwenden, wählen Sie Ihre Textbox, klicken Sie auf die Registerkarte Eigenschaften, wählen (Databindings) - Advanced.

In Hier können Sie die Datum Uhrzeit Datentyp wählen und gegebenenfalls nur das Datum oder die Uhrzeit usw.

+0

Wow, wie habe ich nicht sehen, dass Streifen aus ...? – cdonner

6

Sie können das Ereignis behandeln Binding.Format Ereignis, um das Datum zu formatieren. Und sein Gegenstück Binding.Parse, um die Eingabe von der TextBox zu analysieren.

z.

TextBox.DataBindings["Text"].Format += new ConvertEventHandler(FormatDateEventHandler); 
... 
private void FormatDateEventHandler (object sender, ConvertEventArgs e) 
{ 
    if (! Convert.IsDBNull (e.Value)) 
    { 
     e.Value = ((DateTime)e.Value).ToString ("d", CultureInfo.CurrentCulture); 
    } 
} 
Verwandte Themen