Маски даты и времени¶
Тип маски DateTime
позволяет пользователям вводить значения даты и времени в редакторах в соответствии с указанной маской ввода. Маску ввода также можно использовать для форматирования значений даты и времени в режиме отображения (когда редактирование текста не активно). По умолчанию для контрола DateEditor
включен тип маски DateTime
. Чтобы включить этот тип маски для других текстовых редакторов, установите для свойства редактора TextEditor.MaskType
значение DateTime
.
Используйте свойство редактора Mask
, чтобы задать маску ввода. Маска ввода - это строка, которая определяет шаблон, в соответствии с которым вводится или форматируется значение даты и времени.
Текущие региональные настройки влияют на большинство масок даты и времени. Например, региональные настройки определяют отображаемые названия дней недели и месяцев. Вы можете принудительно присвоить маске определенный регион с помощью свойства TextEditor.MaskCulture
.
Редакторы Eremex поддерживают стандартные и пользовательские маски даты и времени.
Стандартные маски¶
Стандартные маски даты и времени, поддерживаемые редакторами Eremex, соответствуют наиболее распространенному standard date and time display formats, который вы можете использовать для форматирования значений в .NET.
Пример¶
В следующем примере маска d
применяется к DateEditor
. Эта маска форматирует значение редактирования в соответствии с системным шаблоном краткой даты.
xmlns:mxe="https://schemas.eremexcontrols.net/avalonia/editors"
<mxe:DateEditor x:Name="DateEditor" Mask="d"/>
Стандартные спецификации масок¶
Стандартная маска даты и времени состоит из одного стандартного спецификатора маски. В таблице ниже приведены доступные стандартные спецификации масок.
Спецификатор маски | Описание | Пример (ru-Ru) |
---|---|---|
d |
Шаблон короткой даты. Смотрите свойство CultureInfo.DateTimeFormat.ShortDatePattern . |
"05.07.2026" |
D |
Шаблон с длинной датой. Смотрите свойство CultureInfo.DateTimeFormat.LongDatePattern . |
"воскресенье, 5 июля 2026 г." |
t |
Кратковременный паттерн. Смотрите свойство CultureInfo.DateTimeFormat.ShortTimePattern . |
"13:05" |
T |
Долговременный паттерн. Смотрите свойство CultureInfo.DateTimeFormat.LongTimePattern . |
"13:05:17" |
f |
Полная последовательность дат и времени (короткое время). Маска сочетает в себе длинные шаблоны даты и короткие шаблоны времени, разделенные пробелом. |
"пятница, 23 января 2026 г. 18:15" |
F |
Полная последовательность дат и времени (длительное время). Смотрите свойство CultureInfo.DateTimeFormat.FullDateTimePattern . |
"пятница, 23 января 2026 г. 18:15:21" |
g |
Общая последовательность дат и времени (короткое время). Маска сочетает в себе шаблоны краткой даты и краткого времени, разделенные пробелом. |
"30.09.2025 19:35" |
G |
Общая последовательность дат и времени (длительное время). Маска сочетает в себе шаблоны короткой даты и длительного времени, разделенные пробелом. |
"30.09.2025 19:35:07" |
M или m |
Дневной график месяца. Смотрите свойство CultureInfo.DateTimeFormat.MonthDayPattern . |
"12 августа" |
Шаблон | R или r |
RFC1123. Смотрите свойство CultureInfo.DateTimeFormat.RFC1123Pattern . |
s |
Сортируемый шаблон даты и времени; соответствует стандарту ISO 8601. Смотрите свойство CultureInfo.DateTimeFormat.SortableDateTimePattern . |
"2025-09-18T11:57:33" |
u |
Универсальный сортируемый шаблон даты и времени. Смотрите свойство CultureInfo.DateTimeFormat.UniversalSortableDateTimePattern . |
"2025-09-18 11:57:33Z" |
Y или y |
Шаблон Год-месяц. Смотрите свойство CultureInfo.DateTimeFormat.YearMonthPattern . |
"июль 2026 г." |
Пользовательские маски¶
Вы можете создавать пользовательские маски, если стандартные маски не соответствуют вашим конкретным потребностям. Пользовательская маска состоит из одного или нескольких пользовательских спецификаторов маски.
Пример¶
В следующем примере маска 'DATE:' yyyy MMMM dd, 'TIME:' HH:mm
применяется к DateEditor
. Эта маска позволяет пользователям вводить части значения даты и времени в зависимости от даты-времени. В маске также отображаются статические (доступные только для чтения) строки DATE
и TIME
.
Пользовательские спецификации масок¶
В следующей таблице показаны поддерживаемые пользовательские спецификаторы масок.
Спецификатор маски | Описание | Пример |
---|---|---|
d |
Число месяца (1,2...31). Используйте спецификатор маски %d для отображения только дня месяца. В противном случае спецификатор d , используемый отдельно, интерпретируется как шаблон короткой даты. |
2026-07-08T15:11:35 → "8" |
dd |
Число месяца (01,02...31). | 2026-07-08T15:11:35 → "08" |
ddd |
Сокращенное название дня недели, доступное только для чтения. | 2026-07-08T15:11:35 → "ср" |
dddd |
Полное название дня недели, доступное только для чтения. | 2026-07-08T15:11:35 → "среда" |
F или f FF или ff FFF или fff FFFF или ffff FFFFF или fffff FFFFFF или ffffff FFFFFFF или fffffff |
Доли секунд, представленные цифрами 1,2..7. Используйте спецификатор маски %F или %f для отображения только десятых долей секунды. В противном случае спецификатор f /F , используемый отдельно, интерпретируется как полный шаблон даты и времени. |
2026-07-08T15:11:35.249850("fff") → 249 |
s |
Второй (0,1..59). Используйте спецификатор маски %s для отображения только секундной части. В противном случае спецификатор s , используемый отдельно, интерпретируется как сортируемый шаблон даты и времени. |
2030-02-07T01:04:08 → "8" |
ss |
Второй (00,01..59). | 2030-02-07T01:04:08 → "08" |
h |
Час, используя 12-часовые часы (1..12). | 2030-02-07T01:04:08 → "1" |
hh |
Час, используя 12-часовые часы (01,02..12). | 2030-02-07T01:04:08 → "01" |
H |
Час, используя 24-часовые часы (1..23). | 2030-02-07T01:04:08 → "1" 2029-10-04T14:01:02 → "14" |
HH |
Час, используя 24-часовые часы (01,02..23). | 2030-02-07T01:04:08 → "01" 2029-10-04T14:01:02 → "14" |
m |
Минута (0..59). Используйте спецификатор маски %m для отображения только минутной части. В противном случае, используемый отдельно спецификатор m интерпретируется как шаблон дня месяца. |
2030-02-07T01:04:08 → "4" |
mm |
Минута (00,01..59). | 2030-02-07T01:04:08 → "04" |
M |
Номер месяца (1..12). | 2030-02-07T01:04:08 → "2" |
MM |
Номер месяца (01,02..12). | 2030-02-07T01:04:08 → "02" |
MMM |
Сокращенное название месяца. | 2030-02-07T01:04:08 → "февр." |
MMMM |
Полное название месяца. | 2030-02-07T01:04:08 → "февраль" |
y |
Две последние цифры года (0-99). Используйте спецификатор маски %y для отображения только года. В противном случае, используемый только спецификатор y интерпретируется как шаблон года и месяца. |
2001-01-08T09:02:07 → "1" |
yy |
Две последние цифры года (00-99). | 2001-01-08T09:02:07 → "01" |
yyyy |
Год в виде четырехзначного числа. | 2001-01-08T09:02:07 → "2001" |
g или gg |
Период или эра. | 2001-01-08T09:02:07 → "н. э." |
t |
Первая буква в обозначении AM/PM . Используйте спецификатор маски %t для отображения только первой буквы обозначения AM/PM . В противном случае спецификатор t , используемый отдельно, интерпретируется как кратковременный шаблон. |
2001-01-08T09:02:07 → "А" |
tt |
Обозначение AM/PM . |
2001-01-08T09:02:07 → "Я" |
z |
Часовое смещение текущего системного времени от UTC без начальных нулей. | 2001-01-08T09:02:07 → "+3" |
zz |
Часовое смещение текущего времени системы от UTC с начальным нулем для однозначного значения. | 2001-01-08T09:02:07 → "+03" |
zzzz |
Смещение текущего времени системы в часах и минутах от UTC. | 2001-01-08T09:02:07 → "+03:00" |
: |
Разделитель по времени. Смотрите свойство CultureInfo.DateTimeFormat.TimeSeparator . |
2001-01-08T09:02:07 (ЧД:мм) → "09:02" |
/ |
Разделитель дат. Смотрите свойство CultureInfo.DateTimeFormat.DateSeparator . |
2001-01-08T09:02:07 (гггг/ММ/дд) → "2001.01.08" |
\ |
Экранирующий символ. Символ, следующий за экранирующим символом, интерпретируется как литерал, а не как спецификатор маски. Используйте "\\" чтобы вставить символ обратной косой черты в качестве литерала. | 2001-01-08T09:02:07(\t\m: ВН:мм) → "начало: 09:02" |
' string ' " string " |
Строка, заключенная в одинарные или двойные кавычки, отображается как есть, в режиме только для чтения. Эта строка не сохраняется в значении редактирования редактора. | 2001-01-08T09:02:07("время:" ЧЧ:мм) → "время: 09:02" |
Все остальные символы | Эти символы отображаются как есть, в режиме только для чтения. Они не сохраняются в значении редактирования редактора. | 2001-01-08T09:02:07(\Мн. № ММ) → "Мн. № 01" |
* Эта страница была создана автоматически с помощью сервиса машинного перевода Яндекс Переводчик.