UserStoppedTypingBehavior
UserStoppedTypingBehavior
è un Behavior
oggetto che attiverà un'azione quando un utente ha arrestato l'input dei dati nei controlli, ad esempio Entry
, SearchBar
e Editor
. Esempi di utilizzo includono l'attivazione di una ricerca quando un utente ha smesso di immettere la query di ricerca.
Importante
I comportamenti di .NET MAUI Community Toolkit non impostano l'oggetto BindingContext
di un comportamento, perché i comportamenti possono essere condivisi e applicati a più controlli tramite stili. Per altre informazioni, vedere Comportamenti MAUI di .NET
Sintassi
XAML
Inclusione dello spazio dei nomi XAML
Per usare il toolkit in XAML, è necessario aggiungere le informazioni seguenti xmlns
nella pagina o nella visualizzazione:
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
Di conseguenza:
<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>
Verrà modificato in modo da includere l'oggetto xmlns
come indicato di seguito:
<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>
Uso di UserStoppedTypingBehavior
Può UserStoppedTypingBehavior
essere usato come segue in XAML:
<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="MyLittleApp.MainPage"
x:Name="Page">
<Entry Placeholder="Start typing when you stop the behavior will trigger...">
<Entry.Behaviors>
<toolkit:UserStoppedTypingBehavior
Command="{Binding Source={x:Reference Page}, Path=BindingContext.SearchCommand}"
StoppedTypingTimeThreshold="1000"
MinimumLengthThreshold="3"
ShouldDismissKeyboardAutomatically="True" />
</Entry.Behaviors>
</Entry>
</ContentPage>
C#
Può UserStoppedTypingBehavior
essere usato come indicato di seguito in C#:
class UserStoppedTypingBehaviorPage : ContentPage
{
public UserStoppedTypingBehaviorPage()
{
var behavior = new UserStoppedTypingBehavior()
{
StoppedTypingTimeThreshold = 1000,
MinimumLengthThreshold = 3,
ShouldDismissKeyboardAutomatically = true
};
behavior.SetBinding(UserStoppedTypingBehavior.CommandProperty,
nameof(ViewModel. SearchCommand);
var entry = new Entry
{
Placeholder = "Start typing when you stop the behavior will trigger..."
};
entry.Behaviors.Add(behavior);
}
}
C# Markup
Il CommunityToolkit.Maui.Markup
pacchetto offre un modo molto più conciso per usarlo Behavior
in C#.
using CommunityToolkit.Maui.Markup;
class UserStoppedTypingBehaviorPage : ContentPage
{
public UserStoppedTypingBehaviorPage()
{
Content = new Entry
{
Placeholder = "Start typing when you stop the behavior will trigger..."
}
.Behaviors(new UserStoppedTypingBehavior
{
StoppedTypingTimeThreshold = 1000,
MinimumLengthThreshold = 3,
ShouldDismissKeyboardAutomatically = true
}
.Bind(
UserStoppedTypingBehavior.CommandProperty,
static (ViewModel vm) => vm.SearchCommand,
mode: BindingMode.OneTime));
}
}
Proprietà
Proprietà | Type | Descrizione |
---|---|---|
Comando | ICommand | Comando da eseguire quando l'utente ha smesso di fornire l'input. |
MinimumLengthThreshold | int | Lunghezza minima del valore di input necessario prima dell'esecuzione del comando. |
ShouldDismissKeyboardAutomatically | bool | Indica se la tastiera deve essere chiusa automaticamente. |
StoppedTypingTimeThreshold | int | Tempo di inattività in millisecondi dopo il quale verrà eseguito il comando. |
Esempi
È possibile trovare un esempio di questo comportamento in azione nell'applicazione di esempio .NET MAUI Community Toolkit.
API
È possibile trovare il codice sorgente per UserStoppedTypingBehavior
over nel repository GitHub di .NET MAUI Community Toolkit.
.NET MAUI Community Toolkit