TextBox

Элемент пользовательского интерфейса для ввода и изменения текста.

Шаблон TextBox

Перечень всех возможных тэгов объекта:

<MyObject Name="" Type="TextBox" Assembly="BaseControls" ChangeForm="">
  <!--Тэги, общие для всех графических объектов-->
  <Top></Top>
  <Bottom></Bottom>
  <Left></Left>
  <Right></Right>
  <Height></Height>
  <Width></Width>
  <FontStyle></FontStyle>
  <ForeColor></ForeColor>
  <BackColor></BackColor>
  <Enabled></Enabled>
  <Visible></Visible>
  <Hint></Hint>
  <ContextMenu Name="" />
  <Change User="" Source="" ValueSet="" />
  <!--Тэги, специфичные для TextBox-->
  <MaxLength></MaxLength>
  <ReadOnly></ReadOnly>
  <Multiline></Multiline>
  <Password></Password>
  <AllowedSymbols></AllowedSymbols>
  <InputLanguage></InputLanguage>
  <InputCase></InputCase>
  <SelectOnEnter></SelectOnEnter>
  <Mask></Mask>
  <TipText></TipText>
  <TextAlign></TextAlign>
  <Text></Text>
  <ScrollBars></ScrollBars>  
</MyObject>

Описание TextBox

<MyObject Name="TextBoxName" Type="TextBox" Assembly="BaseControls">
  <!--Тэги, общие для всех графических объектов-->
  <!--Тэги, специфичные для TextBox-->
</MyObject>

Значением TextBox считается текст, указанный в поле.

Получение значения

Для получения указанного в поле текста используется get-проперти Text:

<Object Name="TextBoxName">
  <Property Name="Text" />
</Object>

Рекомендуется использовать сокращенный вариант записи:

<Object Name="TextBoxName" />

Задание значения

Для задания значения текстовому полю используется set-проперти Text:

<Object Name="TextBoxName">
  <Property Name="Text">Текст</Property>
</Object>

Рекомендуется использовать сокращенный вариант записи:

<Object Name="TextBoxName">Текст</Object>

Тэги, специфичные для TextBox

MaxLength

Задает максимальное число символов, которое разрешается вводить или вставлять в текстовое поле.

Необязательный тэг. Ожидается положительное целочисленное значение.

По умолчанию используется значение 0, показывающее, что ограничения нет.

<MaxLength>0</MaxLength>

ReadOnly

Указывает, доступно ли текстовое поле только для чтения или для чтения и редактирования.

Необязательный тэг. Ожидается логическое значение.

По умолчанию используется значение False.

<ReadOnly>False</ReadOnly>

Multiline

Задает значение, показывающее, является ли данный элемент управления многострочным текстовым полем. Игнорируется при наличии тэга <Mask>.

Необязательный тэг. Ожидается логическое значение.

По умолчанию используется значение False.

<Multiline>False</Multiline>

Password

Признак, разрешающий ввод пароля. Пользователь увидит только символы звездочек ( * ). Игнорируется при наличии тэга <Mask>.

Необязательный тэг. Ожидается логическое значение.

По умолчанию используется значение False.

<Password>False</Password>

AllowedSymbols

Задает набор символов, которые разрешено вводить в поле. Пустая строка соответствует запрету вводить вообще какие-либо символы.

Необязательный тэг. Любое значение будет переведено в текстовое.

Если тэг отсутствует, то можно вводить любые символы.

<AllowedSymbols>0123456789</AllowedSymbols>

InputLanguage

Задает ограничение на язык вводимых символов. Если язык вводимого символа не совпадает с языком, указанным в данном тэге, то этот символ будет трансформирован в символ другого языка, расположенный на этой же клавише клавиатуры.

Необязательный тэг. Ожидается одно из допустимых значений:

По умолчанию используется значение None.

<InputLanguage>None</InputLanguage>

Например, при значении Rus вводимая последовательность символов "qwerty" будет преобразована в "йцукен".

InputCase

Задает ограничение на регистр вводимых символов. Если регистр вводимого символа не совпадает с регистром, указанном в данном тэге, то этот символ будет трансформирован в указанный регистр.

Необязательный тэг. Ожидается одно из допустимых значений:

По умолчанию используется значение None.

<InputCase>None</InputCase>

SelectOnEnter

Признак, определяющий, будет ли выделено содержимое поля после получения им фокуса.

Необязательный тэг. Ожидается логическое значение.

По умолчанию используется значение False.

<SelectOnEnter>False</SelectOnEnter>

Mask

Маска ввода текстового поля. При наличии тэга <Mask> поля <Multiline>, <Password> и <TextAlign> объекта игнорируются. Если тэг <Mask> отсутствует, то маска ввода не используется и не сможет в дальнейшем быть установлена.

Пустая строка соответствует отсутствию маски, при этом поля <Multiline>, <Password> и <TextAlign> объекта по-прежнему игнорируются.

Необязательный тэг. Любое значение будет переведено в текстовое.

<Mask>AA-00</Mask>

Все поддерживаемые элементы в выражении для задания маски ввода смотрите по ссылке.

Для задания маски номера телефона используется служебное слово PHONE, которое переключает текстовое поле в режим ввода номера телефона. При этом маска выбирается автоматически на основе зоны и кода страны. Подробнее по ссылкам здесь и здесь.

<Mask>PHONE</Mask>

TipText

Задает текст-заполнитель, который будет отображаться в поле, если оно не имеет фокуса и его значение NULL.

Необязательный тэг. Любое значение будет переведено в текстовое.

<TipText>Текст подсказки</TipText>

TextAlign

Используется, чтобы указать способ выравнивания текста по горизонтали. Игнорируется при наличии тэга <Mask>.

Необязательный тэг. Ожидается одно из допустимых значений:

По умолчанию используется значение Left.

<TextAlign>Left</TextAlign>

Text

Задает значение текстового поля.

Необязательный тэг. Любое значение будет переведено в текстовое.

По умолчанию используется пустая строка.

<Text>Текст</Text>

ScrollBars

Тип полос прокрутки, показывающий, какие полосы прокрутки должны присутствовать в многострочном поле. Используется при установленном тэге <Multiline>.

Необязательный тэг. Ожидается одно из допустимых значений:

По умолчанию используется значение Vertical.

<ScrollBars>Vertical</ScrollBars>

BorderStyle

Задает тип границы элемента.

Необязательный тэг. Ожидается одно из допустимых значений:

По умолчанию используется значение FixedSingle.

<BorderStyle>Fixed3D</BorderStyle>

Get-проперти для получения свойств

MaxLength

Возвращает максимальное число символов, которое разрешается вводить или вставлять в текстовое поле.

<Object Name="TextBoxName">
  <Property Name="MaxLength" />
</Object>

ReadOnly

Возвращает значение, определяющее, доступно ли текстовое поле только для чтения или для чтения и редактирования.

<Object Name="TextBoxName">
  <Property Name="ReadOnly" />
</Object>

Multiline

Возвращает значение, показывающее, является ли данный элемент управления многострочным текстовым полем.

<Object Name="TextBoxName">
  <Property Name="Multiline" />
</Object>

Password

Возвращает значение признака ввода пароля в поле.

<Object Name="TextBoxName">
  <Property Name="Password" />
</Object>

AllowedSymbols

Возвращает набор символов, которые разрешено вводить в поле.

<Object Name="TextBoxName">
  <Property Name="AllowedSymbols" />
</Object>

InputLanguage

Возвращает название языка, к которому будут преобразовываться вводимые символы.

<Object Name="TextBoxName">
  <Property Name="InputLanguage" />
</Object>

InputCase

Возвращает название регистра, к которому будут преобразовываться вводимые символы.

<Object Name="TextBoxName">
  <Property Name="InputCase" />
</Object>

SelectOnEnter

Возвращает значение признака, определяющего, будет ли выделено содержимое поля после получения им фокуса.

<Object Name="TextBoxName">
  <Property Name="SelectOnEnter" />
</Object>

Mask

Возвращает маску ввода текстового поля.

<Object Name="TextBoxName">
  <Property Name="Mask" />
</Object>

TipText

Возвращает текст-заполнитель, который будет отображаться в поле, если оно не имеет фокуса и его значение NULL.

<Object Name="TextBoxName">
  <Property Name="TipText" />
</Object>

TextAlign

Возвращает способ выравнивания текста по горизонтали.

<Object Name="TextBoxName">
  <Property Name="TextAlign" />
</Object>

Text

Возвращает значение текстового поля.

<Object Name="TextBoxName">
  <Property Name="Text" />
</Object>

MaskCompleted

Возвращает значение, показывающее, все ли обязательные входные данные введены в маску ввода.

<Object Name="TextBoxName">
  <Property Name="MaskCompleted" />
</Object>

Пример

Если у текстового поля задана маска вида:

<Mask>0000#?</Mask>
  • 0 - обязательный символ, принимает любую цифру от 0 до 9;

  • \# - необязательный символ, принимает любую цифру от 0 до 9 или пробел. Допускаются знаки плюс (+) и минус (-);

  • ? - необязательный символ, принимает буквы таблицы ASCII.

Если в поле будут введены все обязательные цифры, то get-проперти MaskCompleted вернет значение true. Если будет отсутствовать хотя бы одна обязательная цифра, то будет возвращено значение false.

MaskFull

Возвращает значение, показывающее, все ли обязательные и необязательные входные данные были введены в маску ввода.

<Object Name="TextBoxName">
  <Property Name="MaskFull" />
</Object>

Пример

Если у текстового поля задана маска вида:

<Mask>0000#?</Mask>

Если в поле будет введена строка вида "1234-A", то get-проперти MaskFull вернет значение true. Если будет отсутствовать хотя бы один любой символ, то будет возвращено значение false.

WordByNumber

Возвращает целое слово с указанным порядковым номером, извлеченное из значения поля. Символами-разделителями между словами считаются " ", ",", ".", ";".

Ожидается целочисленное положительное значение.

<Object Name="TextBoxName">
  <Property Name="WordByNumber">1</Property>
</Object>

Например, для строки "слово1 слово2" свойство со значением 2 вернет "слово2".

Length

Возвращает длину текста, введенного в поле.

<Object Name="TextBoxName">
  <Property Name="Length" />
</Object>

ScrollBars

Возвращает тип полос прокрутки, показывающий, какие полосы прокрутки должны присутствовать в многострочном поле.

<Object Name="TextBoxName">
  <Property Name="ScrollBars" />
</Object>

BorderStyle

Возвращает тип границы элемента.

<Object Name="TextBoxName">
  <Property Name="BorderStyle" />
</Object>

Set-проперти для динамического задания свойств

MaxLength

Задает максимальное число символов, которое разрешается вводить или вставлять в текстовое поле.

Ожидается положительное целочисленное значение.

<Object Name="TextBoxName">
  <Property Name="MaxLength">200</Property>
</Object>

ReadOnly

Задает значение, определяющее, доступно ли поле только для чтения или для чтения и редактирования.

Ожидается логическое значение.

<Object Name="TextBoxName">
  <Property Name="ReadOnly">True</Property>
</Object>

Multiline

Задает значение, показывающее, является ли данный элемент управления многострочным текстовым полем. Если тэг <Mask> присутствует в описании объекта, то любое переданное значение игнорируется.

Ожидается логическое значение.

<Object Name="TextBoxName">
  <Property Name="Multiline">True</Property>
</Object>

Password

Задает значение признака ввода пароля в поле. Если тэг <Mask> присутствует в описании объекта, то любое переданное значение игнорируется.

Ожидается логическое значение.

<Object Name="TextBoxName">
  <Property Name="Password">True</Property>
</Object>

AllowedSymbols

Задает набор символов, которые разрешено вводить в поле.

Любое значение будет переведено в текстовое.

<Object Name="TextBoxName">
  <Property Name="AllowedSymbols">0123,.</Property>
</Object>

InputLanguage

Задает правила трансформации языка вводимых символов.

Ожидается одно из допустимых значений, указанных в описании тэга <InputLanguage>.

<Object Name="TextBoxName">
  <Property Name="InputLanguage">Rus</Property>
</Object>

InputCase

Задает название языка, к которому будут преобразовываться вводимые символы.

Ожидается одно из допустимых значений, указанных в описании тэга <InputCase>.

<Object Name="TextBoxName">
  <Property Name="InputCase">Lower</Property>
</Object>

SelectOnEnter

Задает значение признака, определяющего, будет ли выделено содержимое поля после получения им фокуса.

Ожидается логическое значение.

<Object Name="TextBoxName">
  <Property Name="SelectOnEnter">True</Property>
</Object>

Mask

Задает маску ввода текстового поля. Если тэг <Mask> отсутствует в описании объекта, то маска не будет установлена.

Любое значение будет переведено в текстовое. Полные правила указания маски ввода указаны в описании тэга <Mask>.

<Object Name="TextBoxName">
  <Property Name="Mask">###.##</Property>
</Object>

TipText

Задает текст-заполнитель, который будет отображаться в поле, если оно не имеет фокуса и его значение NULL.

Любое значение будет переведено в текстовое.

<Object Name="TextBoxName">
  <Property Name="TipText">Текст</Property>
</Object>

TextAlign

Задает способ выравнивания текста по горизонтали. Если тэг <Mask> присутствует в описании объекта, то любое переданное значение игнорируется.

Ожидается одно из допустимых значений, указанных в описании тэга <TextAlign>.

<Object Name="LabelName">
  <Property Name="TextAlign">Right</Property>
</Object>

Text

Задает значение текстового поля.

Любое значение будет переведено в текстовое.

<Object Name="TextBoxName">
  <Property Name="Text">Текст</Property>
</Object>

AppendText

Дописывает поле заданным текстом и переводит курсор в конец поля.

Любое значение будет переведено в текстовое.

<Object Name="TextBoxName">
  <Property Name="AppendText">Текст</Property>
</Object>

InsertAtCursorPosition

Вставляет заданный текст на место курсора и после переводит курсор в конец добавленного текста. Если поле не содержит фокуса, то тогда вставляемый текст добавляется в конец строки, и поле получает фокус.

Любое значение будет переведено в текстовое.

<Object Name="TextBoxName">
  <Property Name="InsertAtCursorPosition">Текст</Property>
</Object>

ScrollBars

Задает тип полос прокрутки, показывающий, какие полосы прокрутки должны присутствовать в многострочном поле. Используется при установленном тэге <Multiline>.

Ожидается одно из допустимых значений, указанных в описании тэга <ScrollBars>.

<Object Name="TextBoxName">
  <Property Name="ScrollBars">Horizontal</Property>
</Object>

ScrollToEnd

Прокручивает содержимое поля до вертикальных и горизонтальных конечных точек полос прокрутки.

Значение не ожидается.

<Object Name="TextBoxName">
  <Property Name="ScrollToEnd"/>
</Object>

BorderStyle

Задает тип границы элемента.

Ожидается одно из допустимых значений, указанных в описании тэга <BorderStyle>.

<Object Name="TextBoxName">
  <Property Name="BorderStyle">Fixed3D</Property>
</Object>

Last updated