Condividi tramite


CommunityToolkit.Maui.Options

CommunityToolkit.Maui.Options consente agli sviluppatori di personalizzare CommunityToolkit.Maui. Il toolkit può comportarsi in modo diverso a seconda di queste impostazioni.

Options deve essere assegnato all'avvio quando si chiama .UseMauiCommunityToolkit():

var builder = MauiApp.CreateBuilder();
builder.UseMauiCommunityToolkit(options =>
{
    options.SetShouldSuppressExceptionsInConverters(false);
    options.SetShouldSuppressExceptionsInBehaviors(false);
    options.SetShouldSuppressExceptionsInAnimations(false);
})

SetShouldSuppressExceptionsInConverters

Se impostato su true, se un convertitore che implementa CommunityToolkit.Maui.Converters.BaseConverter genera un'eccezione Exception, Exception verrà intercettato, registrato tramite Debug.WriteLine()e verrà restituito un valore predefinito predeterminato.

Il valore predefinito è false.

Esempio

Questa opzione è abilitata quando si chiama .UseMauiCommunityToolkit():

var builder = MauiApp.CreateBuilder();
builder.UseMauiCommunityToolkit(options =>
{
    options.SetShouldSuppressExceptionsInConverters(true);
})

Valori restituiti predefiniti

Se impostato su true, verrà restituito un valore predefinito quando un'eccezione Converter genera un'eccezione Exception.

Sono inclusi due valori predefiniti:

  • public object? ICommunityToolkitValueConverter.DefaultConvertReturnValue { get; set; }
    • Default value returned when Convert(object? value, Type targetType, object? parameter, CultureInfo? culture) genera un Exception
  • public object ICommunityToolkitValueConverter.DefaultConvertBackReturnValue { get; set; }
    • Default value returned when ConvertBack(object? value, Type targetType, object? parameter, CultureInfo? culture) genera un Exception

Di seguito è riportato un esempio di impostazione dei valori predefiniti per BoolToObjectConverter:

XAML

<ContentPage.Resources>
    <SolidColorBrush x:Key="TrueColorBrush">Green</SolidColorBrush>
    <SolidColorBrush x:Key="FalseColorBrush">Red</SolidColorBrush>
    <toolkit:BoolToObjectConverter x:Key="BoolToColorBrushConverter" 
                                TrueObject="{StaticResource TrueColorBrush}" 
                                FalseObject="{StaticResource FalseColorBrush}"
                                DefaultConvertReturnValue="{StaticResource FalseColorBrush}"
                                DefaultConvertBackReturnValue="False"/>
</ContentPage.Resources>

C#

var boolToColorBrushConverter = new BoolToObjectConverter
{
    TrueObject = new SolidColorBrush(Colors.Green),
    FalseObject = new SolidColorBrush(Colors.Red),
    DefaultConvertReturnValue = new SolidColorBrush(Colors.Red),
    DefaultConvertBackReturnValue = false
};

SetShouldSuppressExceptionsInAnimations

Se impostato su true, se un'implementazione AnimationCommunityToolkit.Maui.Behaviors.AnimationBehavior genera un'eccezione Exception, Exception verrà intercettata e verrà registrata tramite Debug.WriteLine().

Il valore predefinito è false.

Esempio

Questa opzione è abilitata quando si chiama .UseMauiCommunityToolkit():

var builder = MauiApp.CreateBuilder();
builder.UseMauiCommunityToolkit(options =>
{
    options.SetShouldSuppressExceptionsInAnimations(true);
})

SetShouldSuppressExceptionsInBehaviors

Se impostato su true, se un'implementazione BehaviorCommunityToolkit.Maui.Behaviors.BaseBehavior genera un'eccezione Exception, Exception verrà intercettata e verrà registrata tramite Debug.WriteLine().

Il valore predefinito è false.

Esempio

Questa opzione è abilitata quando si chiama .UseMauiCommunityToolkit():

var builder = MauiApp.CreateBuilder();
builder.UseMauiCommunityToolkit(options =>
{
    options.SetShouldSuppressExceptionsInBehaviors(true);
})