Sdílet prostřednictvím


MaskedBehavior

Jedná se MaskedBehavior o objekt Behavior , který uživateli umožňuje definovat vstupní masku pro zadávání dat. Přidání tohoto chování do InputView ovládacího prvku (např. Entry) vynutí uživatele pouze vstupní hodnoty odpovídající dané masce. Příklady použití zahrnují zadání čísla platební karty nebo telefonního čísla.

Důležité

Chování sady nástrojů .NET MAUI Community Toolkit nenastavuje BindingContext chování, protože chování lze sdílet a použít u více ovládacích prvků prostřednictvím stylů. Další informace najdete v tématu Chování rozhraní .NET MAUI.

Syntaxe

Následující příklady ukazují, jak přidat MaskedBehavior k Entry uživateli pomoc při zadávání 16místného čísla platební karty.

XAML

Zahrnutí oboru názvů XAML

Pokud chcete použít sadu nástrojů v XAML, musíte do stránky nebo zobrazení přidat následující xmlns položky:

xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"

Proto platí následující:

<ContentPage
    x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">

</ContentPage>

Bylo by změněno tak, aby zahrnovalo xmlns následující:

<ContentPage
    x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit">

</ContentPage>

Použití MaskedBehavior

V XAML je možné ho MaskedBehavior použít následujícím způsobem:

<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
             x:Class="CommunityToolkit.Maui.Sample.Pages.Behaviors.MaskedBehaviorPage">

    <Entry Keyboard="Numeric">
        <Entry.Behaviors>
            <toolkit:MaskedBehavior Mask="XXXX XXXX XXXX XXXX" />
        </Entry.Behaviors>
    </Entry>

</ContentPage>

C#

V MaskedBehavior jazyce C# je možné ho použít následujícím způsobem:


class MaskedBehaviorPage : ContentPage
{
    public MaskedBehaviorPage()
    {
        var entry = new Entry
        {
            Keyboard = Keyboard.Numeric
        };

        var behavior = new MaskedBehavior
        {
            Mask = "XXXX XXXX XXXX XXXX"
        };

        entry.Behaviors.Add(behavior);

        Content = entry;
    }
}

Revize jazyka C#

Náš CommunityToolkit.Maui.Markup balíček nabízí mnohem stručnější způsob použití Behavior v jazyce C#.

using CommunityToolkit.Maui.Markup;

class MaskedBehaviorPage : ContentPage
{
    public MaskedBehaviorPage()
    {
        Content = new Entry
        {
            Keyboard = Keyboard.Numeric
        }.Behaviors(new MaskedBehavior
        {
            Mask = "XXXX XXXX XXXX XXXX"
        });
    }
}

Následující snímek obrazovky ukazuje výsledný MaskedBehavior v Androidu: Snímek obrazovky maskovanéhoBehavioru v Androidu

Vlastní znak výzvy

Je možné přepsat znak ve Mask vlastnosti, který bude viditelný pro uživatele. To lze změnit nastavením UnmaskedCharacter vlastnosti, která má výchozí hodnotu 'X'. Pokud se například X vyžadovalo zobrazení mezi každou skupinou 4 číslic v naší 16místné položce platební karty, můžete použít následující:

<Entry Keyboard="Numeric">
    <Entry.Behaviors>
        <toolkit:MaskedBehavior Mask="0000X0000X0000X0000" UnmaskedCharacter="0" />
    </Entry.Behaviors>
</Entry>

Odmaskovaný znak

Vlastnosti

Vlastnost Type Popis
Mask string Maska, kterou musí vstupní hodnota shodovat.
UnmaskedCharacter char Definuje, který znak vlastnosti Mask bude viditelný a zadaný uživatelem.

Příklady

Příklad tohoto chování v akci najdete v ukázkové aplikaci .NET MAUI Community Toolkit.

rozhraní API

Zdrojový kód MaskedBehavior najdete v úložišti .NET MAUI Community Toolkit na GitHubu.