ColorToGrayScaleColorConverter
Le ColorToGrayScaleColorConverter
est un convertisseur unidirectionnel qui permet aux utilisateurs de convertir une Color
entrante en Color
dans les nuances de gris.
La méthode Convert
retourne la value
fournie convertie en Color
dans les nuances de gris.
La méthode ConvertBack
n'est pas prise en charge.
Propriétés BaseConverter
Les propriétés suivantes sont implémentées dans la classe de base public abstract class BaseConverter
:
Propriété | Description |
---|---|
DefaultConvertReturnValue |
Valeur par défaut à retourner lorsque IValueConverter.Convert(object?, Type, object?, CultureInfo?) lève une Exception . Cette valeur est utilisée lorsque CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters est définie sur true . |
DefaultConvertBackReturnValue |
Valeur par défaut à retourner lorsque IValueConverter.ConvertBack(object?, Type, object?, CultureInfo?) lève une Exception . Cette valeur est utilisée lorsque CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters est définie sur true . |
Propriétés ICommunityToolkitValueConverter
Les propriétés suivantes sont implémentées dans le public interface ICommunityToolkitValueConverter
:
Propriété | Type | Description |
---|---|---|
DefaultConvertReturnValue |
object? |
Valeur par défaut à retourner lorsque IValueConverter.Convert(object?, Type, object?, CultureInfo?) lève une Exception . Cette valeur est utilisée lorsque CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters est définie sur true . |
DefaultConvertBackReturnValue |
object? |
Valeur par défaut à retourner lorsque IValueConverter.ConvertBack(object?, Type, object?, CultureInfo?) lève une Exception . Cette valeur est utilisée lorsque CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters est définie sur true . |
Syntaxe
XAML
Y compris l’espace de noms XAML
Pour utiliser le kit de ressources dans XAML, le xmlns
suivant doit être ajouté à votre page ou à votre affichage :
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
Il en résulte ce qui suit :
<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>
Serait modifié pour inclure le xmlns
de la manière suivante :
<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>
Utilisation du ColorToGrayScaleColorConverter
Le ColorToGrayScaleColorConverter
peut être utilisé de la manière suivante dans 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="CommunityToolkit.Maui.Sample.Pages.Converters.ColorToGrayScaleColorConverterPage">
<ContentPage.Resources>
<ResourceDictionary>
<toolkit:ColorToGrayScaleColorConverter x:Key="ColorToGrayScaleColorConverter" />
</ResourceDictionary>
</ContentPage.Resources>
<Label Text="The Text is showing in grayscale"
TextColor="{Binding AppTextColor, Converter={StaticResource ColorToGrayScaleColorConverter}}" />
</ContentPage>
C#
Le ColorToGrayScaleColorConverter
peut être utilisé de la manière suivante dans C# :
class ColorToGrayScaleColorConverterPage : ContentPage
{
public ColorToGrayScaleColorConverterPage()
{
var label = new Label { Text = "The Text is showing in grayscale" };
label.SetBinding(
Label.TextColorProperty,
new Binding(
nameof(ViewModels.AppTextColor),
converter: new ColorToGrayScaleColorConverter()));
Content = label;
}
}
Balisage C#
Notre package CommunityToolkit.Maui.Markup
offre un moyen beaucoup plus concis d’utiliser ce convertisseur dans C#.
using CommunityToolkit.Maui.Markup;
class ColorToGrayScaleColorConverterPage : ContentPage
{
public ColorToGrayScaleColorConverterPage()
{
Content = new Label { Text = "The Text is showing in grayscale" }
.Bind(
Label.TextColorProperty,
static (ViewModel vm) => vm.AppTextColor,
converter: new ColorToGrayScaleColorConverter());
}
}
Exemples
Vous trouverez un exemple d’utilisation de ce convertisseur dans l’Exemple d’application du kit d’outils de la communauté .NET MAUI.
API
Vous pouvez trouver le code source deColorToGrayScaleColorConverter
sur le référentiel du kit de ressources de la communauté .NET MAUI sur GitHub.
.NET MAUI Community Toolkit