Background
This issue comes from the discussion in PR #127.
PR #127 proposed adding culture/calendar-related behavior to Calendar and DatePicker, including the following public properties:
DisplayCulture
UseGregorianCalendar
The DateOnly / DateOnly? value-type change is handled separately in #128.
This issue is intended to discuss whether these additional culture/calendar-related APIs are necessary, and whether they are the right API shape for MewUI.
Current behavior
MewUI currently follows the UI culture for date display and formatting.
Because of that, adding a separate DisplayCulture property raises a design question:
Should Calendar and DatePicker be able to override the UI culture independently, or should they continue to follow the same UI culture model as the rest of the framework?
UseGregorianCalendar also raises a separate question.
The property is a boolean, but the underlying concept is calendar-system behavior. If MewUI needs to support calendar-system-specific behavior, we should first clarify whether this should be modeled as a boolean option, a more explicit calendar-system API, or not exposed as public API at this stage.
Questions
- Do
Calendar and DatePicker need a culture override separate from the existing UI culture?
- If a culture override is needed, should it be a control-specific property such as
DisplayCulture, or part of a more general element-level culture/language model?
- If
DisplayCulture is introduced, how should it interact with FirstDayOfWeek?
- Should
FirstDayOfWeek remain a fully independent explicit property with its current default?
- Or should its default value be derived from the effective culture when no explicit value is set?
- Should calendar-system behavior be modeled separately from display culture?
- Is
UseGregorianCalendar the right API shape, or is a boolean too narrow for this concept?
- If calendar-system-specific behavior is introduced, what should
SelectedDate represent?
Current direction
My current preference is to avoid adding DisplayCulture and UseGregorianCalendar as public APIs until the scenarios and API model are clearer.
Date display and formatting can continue to follow the existing UI culture by default.
If a culture override is needed, I would prefer to first consider whether MewUI needs a general element-level culture/language concept instead of adding a date-control-specific property.
Calendar-system behavior should also be treated as a separate concept from display culture. A boolean such as UseGregorianCalendar may be too narrow if this is intended to become a broader calendar-system feature.
If DisplayCulture is introduced later, its relationship with FirstDayOfWeek should be defined as part of the same API design.
Scope
This issue is only about the additional culture/calendar-related APIs proposed in PR #127:
DisplayCulture
UseGregorianCalendar
It does not cover the DateOnly / DateOnly? value-type change itself.
Background
This issue comes from the discussion in PR #127.
PR #127 proposed adding culture/calendar-related behavior to
CalendarandDatePicker, including the following public properties:DisplayCultureUseGregorianCalendarThe
DateOnly/DateOnly?value-type change is handled separately in #128.This issue is intended to discuss whether these additional culture/calendar-related APIs are necessary, and whether they are the right API shape for MewUI.
Current behavior
MewUI currently follows the UI culture for date display and formatting.
Because of that, adding a separate
DisplayCultureproperty raises a design question:Should
CalendarandDatePickerbe able to override the UI culture independently, or should they continue to follow the same UI culture model as the rest of the framework?UseGregorianCalendaralso raises a separate question.The property is a boolean, but the underlying concept is calendar-system behavior. If MewUI needs to support calendar-system-specific behavior, we should first clarify whether this should be modeled as a boolean option, a more explicit calendar-system API, or not exposed as public API at this stage.
Questions
CalendarandDatePickerneed a culture override separate from the existing UI culture?DisplayCulture, or part of a more general element-level culture/language model?DisplayCultureis introduced, how should it interact withFirstDayOfWeek?FirstDayOfWeekremain a fully independent explicit property with its current default?UseGregorianCalendarthe right API shape, or is a boolean too narrow for this concept?SelectedDaterepresent?Current direction
My current preference is to avoid adding
DisplayCultureandUseGregorianCalendaras public APIs until the scenarios and API model are clearer.Date display and formatting can continue to follow the existing UI culture by default.
If a culture override is needed, I would prefer to first consider whether MewUI needs a general element-level culture/language concept instead of adding a date-control-specific property.
Calendar-system behavior should also be treated as a separate concept from display culture. A boolean such as
UseGregorianCalendarmay be too narrow if this is intended to become a broader calendar-system feature.If
DisplayCultureis introduced later, its relationship withFirstDayOfWeekshould be defined as part of the same API design.Scope
This issue is only about the additional culture/calendar-related APIs proposed in PR #127:
DisplayCultureUseGregorianCalendarIt does not cover the
DateOnly/DateOnly?value-type change itself.