Маски даты и времени¶
Тип маски DateTime позволяет пользователям вводить значения даты-времени в редакторах в соответствии с заданной маской ввода. Маску ввода также можно использовать для форматирования значений даты-времени в режиме отображения (когда редактирование текста не активно). У контрола DateEditor тип маски DateTime включён по умолчанию. Чтобы включить этот тип маски для других текстовых редакторов, установите свойство редактора TextEditor.MaskType в DateTime.
Используйте свойство редактора Mask, чтобы задать маску ввода. Маска ввода — это строка, определяющая шаблон, по которому значение даты-времени вводится или форматируется.
Текущая культура влияет на большинство масок даты-времени. Например, культура определяет отображаемые названия дней недели и месяцев. Вы можете принудительно назначить маске конкретную культуру с помощью свойства TextEditor.MaskCulture.
Редакторы Eremex поддерживают стандартные и пользовательские маски даты-времени.
Стандартные маски¶
Стандартные маски даты-времени, поддерживаемые редакторами Eremex, соответствуют наиболее распространённым стандартным форматам отображения даты и времени, которые вы можете использовать для форматирования значений в .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. |
"ср, 12 авг. 2026 06:19:57 GMT" |
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 → "A" |
tt |
Обозначение AM/PM. |
2001-01-08T09:02:07 → "AM" |
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 (HH:mm) → "09:02" |
/ |
Разделитель даты. См. свойство CultureInfo.DateTimeFormat.DateSeparator. |
2001-01-08T09:02:07 (yyyy/MM/dd) → "2001.01.08" |
\ |
Экранирующий символ. Символ, следующий за экранирующим символом, интерпретируется как литерал, а не как спецификатор маски. Используйте "\\", чтобы вставить символ обратной косой черты как литерал. | 2001-01-08T09:02:07(\t\m\: HH:mm) → "tm: 09:02" |
'строка ' "строка " |
Строка, заключённая в одинарные или двойные кавычки, отображается как есть, в режиме «только для чтения». Эта строка не сохраняется в значении редактирования редактора. | 2001-01-08T09:02:07("время:" HH:mm) → "время: 09:02" |
| Все другие символы | Эти символы отображаются как есть, в режиме «только для чтения». Они не сохраняются в значении редактирования редактора. | 2001-01-08T09:02:07(\Mn. № MM) → "Mn. № 01" |
* Эта страница переведена с использованием технологий машинного перевода.

