DatePicker
Datum- und Zeitauswahl mit Flatpickr – als Datepicker, Timepicker und DateTimepicker, mit Min/Max, ReadOnly, Clear-Icon, AfterValueChanged, AutoSaveCallback und Validierung.
Typen
Drei Betriebsmodi:Datepicker (nur Datum), Timepicker (nur Uhrzeit) und Datetimpicker (Datum + Uhrzeit kombiniert).
Datepicker
Wert:
Timepicker
Wert:
Datetimpicker
Wert:
Zustände
ReadOnly: Wert ist sichtbar, aber nicht editierbar – gestrichelter Rahmen, normaler Text.ShowClearIcon / ShowDatepickerIcon: Icons können einzeln ein- oder ausgeblendet werden.
ReadOnly
ReadOnly (leer)
Ohne Clear-Icon
Ohne Kalender-Icon
Min / Max
MinDate und MaxDate begrenzen den auswählbaren Bereich im Kalender.
Nur diese Woche
Wert:
Nur Vergangenheit
Wert:
AfterValueChanged
AfterValueChanged wird nach jeder Wertänderung ausgelöst – ideal für reaktive Logik ohne Two-Way-Binding.
AfterValueChanged
Änderungen: 0×
AutoSaveCallback
AutoSaveCallback wird nach jeder Wertänderung ausgelöst – standardmäßig nur wenn das Feld gültig ist (TriggerAutoSaveCallbackOnlyIfValid).
Nur bei gültigem Wert
Gespeichert: –
Immer speichern
Gespeichert: –
CustomValidationMethod
Eigene Validierungslogik ohne DataAnnotations – direkt alsFunc<TValue, bool>.
Nur Wochentage
Nur Zukunft
Validierung mit DataAnnotations
Integration inEditContext via Form-Komponente und DataAnnotationsValidator. ShowValidationTooltip zeigt Fehlermeldungen inline.
Size
Alle fünf Größen vonXs bis Xl – alle Felder teilen denselben Bindewert.
Xs
Sm
Md (Standard)
Lg
Xl
Aktueller Wert
class & style
Beliebige HTML-Attribute (class, style, data-*, aria-*) werden an den Input-Wrapper durchgereicht.
class
style
SKILL.md – Datepicker
--- name: DatePicker description: Onesown Blazor Komponente DatePicker (Inputs). Verwende diesen Skill wenn du die DatePicker-Komponente verwenden, konfigurieren oder debuggen moechtest. --- # DatePicker **Namespace:** `Onesown.Blazor.Components` **Kategorie:** Inputs **Basisklasse:** `FormControlBase` **Generisch:** Ja (`DatePicker<TItem>` o.ae.) Generisches Datums-/Zeit-Eingabefeld auf Basis von Flatpickr (Locale de). Unterstützt Datepicker, Timepicker und kombinierten Datetime-Picker mit konfigurierbarem Anzeigeformat und Min/Max-Grenzen. **Live-Demo:** https://components.schini.com/demo/datepicker ## Parameter | Parameter | Typ | Standard | Beschreibung | |---|---|---|---| | ``Readonly`` | ``bool`` | | Setzt das Feld in den Nur-Lesen-Modus: Kalender kann nicht geöffnet werden, Wert nicht änderbar. | | ``ShowClearIcon`` | ``bool`` | ``true`` | Zeigt ein X-Symbol zum Zurücksetzen des Datumswerts. Standard: true. | | ``ShowDatepickerIcon`` | ``bool`` | ``true`` | Zeigt das Kalender-Icon zum Öffnen des Pickers. Standard: true. | | ``DisplayFormat`` | ``string`` | | Anzeigeformat für das Datum im Eingabefeld. Folgt Flatpickr-Formatierung (z.B. "d.m.Y"). Standard: abhängig vom Typ. | | ``Typ`` | ``DatepickerTypen`` | ``DatepickerTypen.Datepicker`` | Art des Pickers. Mögliche Werte: Datepicker (Standard), Timepicker (nur Uhrzeit), Datetimpicker (Datum + Uhrzeit). | | ``DatepickerIconTemplate`` | ``RenderFragment`` | | Benutzerdefiniertes Template für das Kalender-Icon (ersetzt Standard-Icon). | | ``ClearIconTemplate`` | ``RenderFragment`` | | Benutzerdefiniertes Template für das Clear-Icon (ersetzt Standard-X). | | ``ValueChanged`` | ``EventCallback<TValue>`` | | EventCallback für Two-Way-Binding mit @bind-Value. Wird nach jeder Datumsauswahl ausgelöst. | | ``ValueExpression`` | ``Expression<Func<object>>`` | | LINQ-Expression auf die gebundene Model-Property. Wird benötigt für DataAnnotations-Validierung und Label. | | ``Value`` | ``TValue`` | | Aktuell gebundener Datumswert (DateTime oder DateTime?). | | ``MaxDate`` | ``DateTime?`` | | Maximales auswählbares Datum. Tage nach diesem Datum werden im Kalender deaktiviert. | | ``MinDate`` | ``DateTime?`` | | Minimales auswählbares Datum. Tage vor diesem Datum werden im Kalender deaktiviert. | | ``CustomValidationMethod`` | ``Func<TValue, bool>`` | | Optionale zusätzliche Validierungsfunktion. Gibt true zurück wenn der Wert gültig ist, false wenn nicht. | ## Geerbte Parameter (FormControlBase) | Parameter | Typ | Standard | Beschreibung | |---|---|---|---| | ``Size`` | ``string`` | ``OoSize.Md`` | Größe der Komponente. Mögliche Werte: OoSize.Xs, OoSize.Sm, OoSize.Md, OoSize.Lg, OoSize.Xl. Wird als CSS-Klasse am Root-Element gesetzt. | | ``Id`` | ``string`` | ``Generator.GenerateRandomHtmlTagID()`` | Eindeutige HTML-ID des Input-Elements. Wird automatisch generiert und kann überschrieben werden (z. B. für Labels mit for-Attribut). | | ``ShowLabel`` | ``bool`` | ``true`` | Blendet das Label über dem Eingabefeld ein oder aus. Standard: true. | | ``IsFloatingLabel`` | ``bool`` | ``true`` | Aktiviert das schwebende Label (Floating Label), das beim Fokus oder bei Eingabe nach oben animiert. Standard: true. | | ``Label`` | ``string`` | | Beschriftung des Eingabefelds. Wird auch als Accessible-Name für Screenreader verwendet. | | ``Placeholder`` | ``string`` | ``" "`` | Platzhaltertext im leeren Eingabefeld. Standard: Leerzeichen (verhindert Floating-Label-Sprung in Chrome). | | ``AutoSaveCallback`` | ``EventCallback`` | | Wird nach jeder Wertänderung ausgelöst und signalisiert der Seite, dass gespeichert werden soll. Kombinierbar mit TriggerAutoSaveCallbackOnlyIfValid. | | ``TriggerAutoSaveCallbackOnlyIfValid`` | ``bool`` | ``true`` | Steuert ob AutoSaveCallback nur bei gültigem Wert ausgelöst wird. Standard: true. | | ``AfterValueChanged`` | ``EventCallback`` | | Wird nach jeder Wertänderung ausgelöst, unabhängig von der Gültigkeit des Werts. Geeignet für Live-Vorschau oder Seiteneffekte. | | ``ShowValidationTooltip`` | ``bool`` | ``false`` | Zeigt Validierungsmeldungen als Tooltip neben dem Feld statt als Text darunter. Standard: false. | ## Hinweise - Immer @bind-Value für Two-Way-Binding verwenden - Für Formular-Validierung ValueExpression="() => _model.Property" setzen - Komponente muss innerhalb eines <Form>- oder <EditForm>-Containers liegen, damit der EditContext greift - AutoSaveCallback wird nach jeder gültigen Änderung ausgelöst, wenn TriggerAutoSaveCallbackOnlyIfValid=true (Standard) - AfterValueChanged wird nach jeder Änderung ausgelöst, unabhängig von der Gültigkeit - ShowValidationTooltip=true zeigt Validierungsmeldungen als Tooltip statt unter dem Feld - TValue: DateTime oder DateTime? – nullable wird für optionale Felder empfohlen - Typ wechseln: Typ="DatepickerTypen.Timepicker" für reine Zeitauswahl, Typ="DatepickerTypen.Datetimpicker" für Datum+Zeit - Anzeigeformat: DisplayFormat folgt Flatpickr-Formatierung (z.B. "d.m.Y" für deutsches Datum) - Min/MaxDate: MinDate und MaxDate begrenzen den auswählbaren Bereich - Clear-Icon: ShowClearIcon="true" (Standard) zeigt X zum Zurücksetzen; eigenes Template via ClearIconTemplate - Eigenes Kalender-Icon: DatepickerIconTemplate ersetzt das Standard-Kalender-Symbol