Compartilhar via


CommunityToolkit.Maui.Options

CommunityToolkit.Maui.Options permite que os desenvolvedores personalizem CommunityToolkit.Maui. O kit de ferramentas pode se comportar diferente depende dessas configurações.

Options deve ser atribuído na inicialização ao chamar .UseMauiCommunityToolkit():

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

SetShouldSuppressExceptionsInConverters

Quando definido como true, se um conversor que implementa CommunityToolkit.Maui.Converters.BaseConverter gerar um Exception, o Exception será capturado, registrado via Debug.WriteLine(), e um valor padrão predeterminado será retornado.

O valor padrão é false.

Exemplo

Essa opção é habilitada ao chamar .UseMauiCommunityToolkit():

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

Valores padrão de retorno

Quando definido como true, um valor padrão será retornado quando um Converter gerar um Exception.

Dois valores padrão estão incluídos:

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

Aqui está um exemplo que define os valores padrão para 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

Quando definido como true, se um Animation implementando CommunityToolkit.Maui.Behaviors.AnimationBehavior lançar um Exception, o Exception será capturado e registrado via Debug.WriteLine().

O valor padrão é false.

Exemplo

Essa opção é habilitada ao chamar .UseMauiCommunityToolkit():

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

SetShouldSuppressExceptionsInBehaviors

Quando definido como true, se um Behavior implementando CommunityToolkit.Maui.Behaviors.BaseBehavior lançar um Exception, o Exception será capturado e registrado via Debug.WriteLine().

O valor padrão é false.

Exemplo

Essa opção é habilitada ao chamar .UseMauiCommunityToolkit():

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