Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das MaxLengthReachedBehavior ist ein Behavior, das es dem Benutzer ermöglicht, eine Aktion auszulösen, wenn ein Benutzer die auf einem InputView zulässige maximale Länge erreicht hat. Je nach bevorzugtem Szenario des Benutzers kann es entweder ein Command Oder ein Ereignis auslösen. Sowohl das Command als auch das Ereignis enthalten den resultierenden Text des InputView.
Darüber hinaus ist es möglich, die Tastatur auszublenden, sobald die maximale Länge erreicht ist, und zwar über die Eigenschaft ShouldDismissKeyboardAutomatically, deren Standardwert false ist.
Important
Die .NET MAUI Community Toolkit Behaviors legen die BindingContext eines Verhaltens nicht fest, da Verhaltensweisen über Stile freigegeben und auf mehrere Steuerelemente angewendet werden können. Weitere Informationen finden Sie unter .NET MAUI Behaviors
Syntax
XAML
Einbinden des XAML-Namespace
Um das Toolkit in XAML verwenden zu können, muss der folgende xmlns-Abschnitt zu Ihrer Seite oder Ansicht hinzugefügt werden:
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
Daher das Folgende:
<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>
Würde geändert werden, um das xmlns wie folgt einzubinden:
<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>
Verwendung von MaxLengthReachedBehavior
Dies MaxLengthReachedBehavior kann wie folgt in XAML verwendet werden:
<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.MaxLengthReachedBehaviorPage"
x:Name="Page">
<Entry Placeholder="Start typing until MaxLength is reached..."
MaxLength="100"
x:Name="MaxLengthEntry">
<Entry.Behaviors>
<toolkit:MaxLengthReachedBehavior
BindingContext="{Binding Path=BindingContext, Source={x:Reference MaxLengthEntry}, x:DataType=Entry}"
Command="{Binding Source={x:Reference Page}, Path=BindingContext.MaxLengthReachedCommand, x:DataType=ContentPage}" />
</Entry.Behaviors>
</Entry>
</ContentPage>
C#
Dies MaxLengthReachedBehavior kann wie folgt in C# verwendet werden:
class MaxLengthReachedBehaviorPage : ContentPage
{
public MaxLengthReachedBehaviorPage()
{
var entry = new Entry
{
Placeholder = "Start typing until MaxLength is reached...",
MaxLength = 100
};
var behavior = new MaxLengthReachedBehavior();
behavior.SetBinding(
MaxLengthReachedBehavior.CommandProperty,
static (MaxLengthReachedBehaviorViewModel vm) => vm.MaxLengthReachedCommand,
source: this.BindingContext);
entry.Behaviors.Add(behavior);
Content = entry;
}
}
C#-Markup
Unser CommunityToolkit.Maui.Markup Paket bietet eine viel präzisere Möglichkeit, dies Behavior in C# zu verwenden.
using CommunityToolkit.Maui.Markup;
class MaxLengthReachedBehaviorPage : ContentPage
{
public MaxLengthReachedBehaviorPage()
{
Content = new Entry
{
Placeholder = "Start typing until MaxLength is reached...",
MaxLength = 100
}.Behaviors(
new MaxLengthReachedBehavior()
.Bind(MaxLengthReachedBehavior.CommandProperty,
getter: static (ViewModel vm) => vm.MaxLengthReachedCommand,
source: this.BindingContext));
}
}
Eigenschaften
| Eigentum | Typ | Beschreibung |
|---|---|---|
Command |
ICommand | Der Befehl, der ausgeführt wird, wenn der Benutzer die maximale Länge erreicht hat. Der Parameter des Befehls enthält die Text des InputView. |
ShouldDismissKeyboardAutomatically |
bool |
Gibt an, ob die Tastatur automatisch ausgeblendet werden soll, wenn die maximale Länge erreicht ist. |
Events
| Event | Beschreibung |
|---|---|
MaxLengthReached |
Das Ereignis, das ausgelöst wird, wenn der Benutzer die maximale Länge erreicht hat. Die Ereignisargumente enthalten die Text der InputView. |
Beispiele
Sie finden ein Beispiel für dieses Verhalten in Aktion in der .NET MAUI Community Toolkit-Beispielanwendung.
API
Sie finden den Quellcode für MaxLengthReachedBehavior im .NET MAUI Community Toolkit GitHub Repository.
.NET MAUI Community Toolkit