TextEditor¶
Контрол TextEditor предоставляет базовые функции редактирования текста. Он поддерживает маски, которые позволяют вам ограничивать пользовательский ввод и форматировать значения.

Основные функции контрола включают в себя:
- Поддержка одно-и мульти линия-линия текста.
- Перенос текста.
- Использование масок для задания шаблона ввода данных.
- Использование масок для форматирования значений, когда редактор не имеет фокуса.
- Выделение текста.
- Водяные знаки
Укажите текст и настройте опции текста¶
Свойство TextEditor.EditorValue определяет текст редактора. Если текст содержит символы NewLine, редактор отображает текст на нескольких линиях. 
Перенос текста¶
Свойство TextEditor.TextWrapping позволяет активировать автоматический перенос текста в правой части редактора. Установите для этого свойства значение Avalonia.Media.TextWrapping.Wrap, чтобы включить режим обычного переноса текста.
Принимать ключи Tab и Enter во время ввода¶
Пользователи могут нажимать клавиши Tab и Enter, чтобы вставить символы Tab и Return в текст. Вы можете использовать следующие опции, чтобы изменить это поведение:
- TextEditor.AcceptsReturn— Указывает, вставляется ли символ NewLine при нажатии клавиши Enter. Если это свойство отключено, редактор игнорирует клавишу Enter.
- TextEditor.AcceptsTab— Указывает, вставляется ли символ вкладки при нажатии клавиши Tab. Если это свойство отключено, фокус перемещается на следующий контрол в порядке вкладок при нажатии клавиши Tab.
Маски¶
Маска , применяемая к текстовому редактору, позволяет пользователю вводить значения в соответствии с заданным шаблоном. Замаскированный ввод включен для контролов DateEditor и SpinEditor и отключен для других текстовых редакторов по умолчанию.
Чтобы включить замаскированный ввод, выполните следующие действия:
- Установите для свойства TextEditor.MaskTypeзначение типа маски.
- Установите для свойства TextEditor.Maskзначение маски.
Тип маски¶
Свойство TextEditor.MaskType позволяет вам выбрать режим маски из следующих опций:
- MaskType.Numeric— Режим маски, адаптированный для приема числовых значений.
- MaskType.DateTime— Режим маски, адаптированный для приема значений даты и времени.
- MaskType.None— Замаскированный ввод отключен.
Строки масок¶
Используйте свойство TextEditor.Mask, чтобы задать строку, задающую маску. Маска состоит из спецификаторов маски, которые относятся к выбранному типу маски.
Дополнительные сведения см. в следующих разделах:
Пример - Разрешить ввод целых значений в текстовом редакторе¶
Следующий код применяет числовую маску "d", чтобы ограничить ввод данных целыми значениями в TextEditor.

xmlns:mxe="https://schemas.eremexcontrols.net/avalonia/editors"
<mxe:TextEditor Name="textEditor1" MaskType="Numeric" Mask="d" 
 HorizontalContentAlignment="Right"/>
Использование маски в качестве формата отображения¶
Маска, указанная свойством TextEditor.Mask, может использоваться для форматирования значения редактора в режиме отображения (когда редактирование текста не активно). Свойство TextEditor.MaskUseAsDisplayFormat определяет это свойство. Значение свойства по умолчанию - true.
Свойства культуры масок¶
Многие маски зависят от текущего языка и культуры. Например, десятичный разделитель для числовых масок в разных странах используется по-разному. Значения даты и времени форматируются с использованием шаблонов, специфичных для конкретной страны, и локализованных названий дней недели и месяцев.
Свойство TextEditor.MaskCulture позволяет вам указать язык интерфейса, который будет использоваться с помощью маски. Если это свойство не задано, используется язык интерфейса приложения по умолчанию.
Пример¶
Следующий код устанавливает числовую маску "c" для ввода значений валют в текстовом редакторе и применяет к этой маске язык Chinese (Simplified).

textEditor1.EditorValue = 12.34567;
textEditor1.MaskType = Eremex.AvaloniaUI.Controls.Editors.MaskType.Numeric;
textEditor1.MaskCulture = new CultureInfo("zh-CN");
textEditor1.Mask = "c";
Выделение текста¶
Пользователь может выделять текст с помощью мыши и клавиатуры.
Чтобы выделить фрагмент текста и удалить выделение в коде, используйте следующий API:
- TextEditor.SelectionStart— начинающийся с нуля индекс начального символа выделенного текста.
- TextEditor.SelectionEnd— индекс конечного символа выделенного текста, начинающийся с нуля.
- TextEditor.SelectAll— Выделяет весь текст.
- TextEditor.ClearSelection— Отменяет выбор выделенного текста.
Водяные знаки¶
Контрол TextEditor и его потомки поддерживают водяные знаки. Водяной знак - это выделенная серым цветом подсказка, отображаемая, когда значение редактора пусто или равно null.

Используйте свойство TextEditor.Watermark, чтобы указать водяной знак.
xmlns:mxe="https://schemas.eremexcontrols.net/avalonia/editors"
<mxe:TextEditor Name="textEditor1" Watermark="Type to search"/>
Смотрите также¶
* Эта страница была создана автоматически с помощью сервиса машинного перевода Яндекс Переводчик.