MaskedTextBox

The MaskedTextBox control is an editable text field where a user can input text.

Source code

MaskedTextBox.cs

Basic example line TextBox

<Window xmlns="https://github.com/avaloniaui"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
        x:Class="AvaloniaAppTemplate.MainWindow"
        Title="AvaloniaAppTemplate">
    <StackPanel Margin="10">
        <MaskedTextBox Mask="(00) 000 - 000 000 00" />
    </StackPanel>
</Window>

produces the following output in Ubuntu

and it behaves like so when filled in by user input

Supported Masks

The Mask Property accepts a string as Configuration and it follows the same Mask configuration as WPF masks.

Masking elementDescription

0

Digit, required. This element will accept any single digit between 0 and 9.

9

Digit or space, optional.

#

Digit or space, optional. If this position is blank in the mask, it will be rendered as a space in the Text property. Plus (+) and minus (-) signs are allowed.

L

Letter, required. Restricts input to the ASCII letters a-z and A-Z

?

Letter, optional. Restricts input to the ASCII letters a-z and A-Z

&

Character, required. If the AsciiOnly property is set to true, this element behaves like the "L" element.

C

Character, optional. Any non-control character. If the AsciiOnly property is set to true, this element behaves like the "?" element.

A

Alphanumeric, required. If the AsciiOnly property is set to true, the only characters it will accept are the ASCII letters a-z and A-Z. This mask element behaves like the "a" element.

a

Alphanumeric, optional. If the AsciiOnly property is set to true, the only characters it will accept are the ASCII letters a-z and A-Z. This mask element behaves like the "A" element.

.

Decimal placeholder. The actual display character used will be the decimal symbol appropriate to the format provider, as determined by the control's FormatProvider property.

,

Thousands placeholder. The actual display character used will be the thousands placeholder appropriate to the format provider, as determined by the control's FormatProvider property.

:

Time separator. The actual display character used will be the time symbol appropriate to the format provider, as determined by the control's FormatProvider property.

/

Date separator. The actual display character used will be the date symbol appropriate to the format provider, as determined by the control's FormatProvider property.

$

Currency symbol. The actual character displayed will be the currency symbol appropriate to the format provider, as determined by the control's FormatProvider property.

<

Shift down. Converts all characters that follow to lowercase.

>

Shift up. Converts all characters that follow to uppercase.

|

Disable a previous shift up or shift down.

\

Escape. Escapes a mask character, turning it into a literal. "\"

All other characters

Literals. All non-mask elements will appear as themselves within MaskedTextBox. Literals always occupy a static position in the mask at run time, and cannot be moved or deleted by the user.

最后更新于