Skip to content

TextEditor

Контрол 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.

texteditor-numericmask-d

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).

texteditor-mask-currency-chinese

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

Используйте свойство TextEditor.Watermark, чтобы указать водяной знак.

xmlns:mxe="https://schemas.eremexcontrols.net/avalonia/editors"

<mxe:TextEditor Name="textEditor1" Watermark="Type to search"/>

Смотрите также



* Эта страница была создана автоматически с помощью сервиса машинного перевода Яндекс Переводчик.