Partager via


ColorToCmykaStringConverter

Le ColorToCmykaStringConverter est un convertisseur unidirectionnel qui permet aux utilisateurs de convertir une liaison de valeur de Color à son équivalent CMYKA string au format suivant : CMYKA (cyan,magenta,yellow,key,alpha)cyan, magenta, yellow (jaune) et key (clé) ont une valeur comprise entre 0 % et 100 %, et où alpha a une valeur comprise entre 0 et 1 (par exemple CMYKA(0%,100%,100%,0%,1) pour Colors.Red).

La méthode Convert renvoie la Colorvalue fournie qui a été convertie à son équivalent CMYKA string.

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

Les exemples suivants montrent comment utiliser le ColorToCmykaStringConverter pour afficher la chaîne équivalente CMYKA d'une Color spécifique.

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 de ColorToCmykaStringConverter

Le ColorToCmykaStringConverter 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.ColorToCmykaStringConverterPage">

    <ContentPage.Resources>
        <ResourceDictionary>
            <toolkit:ColorToCmykaStringConverter x:Key="ColorToCmykaStringConverter" />
        </ResourceDictionary>
    </ContentPage.Resources>

    <VerticalStackLayout>
        <Label Text="My favourite Color is:" />

        <Label Text="{Binding MyFavoriteColor, Converter={StaticResource ColorToCmykaStringConverter}}" />
    </VerticalStackLayout>

</ContentPage>

C#

Le ColorToCmykaStringConverter peut être utilisé de la manière suivante dans C# :

class ColorToCmykaStringConverterPage : ContentPage
{
    public ColorToCmykaStringConverterPage()
    {
        var label = new Label();

	label.SetBinding(
		Label.TextProperty,
		new Binding(
			nameof(ViewModel.MyFavoriteColor),
			converter: new ColorToCmykaStringConverter()));

	Content = new VerticalStackLayout
	{
		Children =
		{
			new Label { Text = "My favourite Color is:" },
			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 ColorToCmykaStringConverterPage : ContentPage
{
    public ColorToCmykaStringConverterPage()
    {
        Content = new VerticalStackLayout
        {
            Children =
            {
                new Label()
                    .Text("My favourite Color is:"),
                new Label()
                    .Bind(
                        Label.TextProperty,
                        static (ViewModel vm) => vm.MyFavoriteColor,
                        converter: new ColorToCmykaStringConverter())
            }
        };
    }
}

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 deColorToCmykaStringConverter sur le référentiel du kit de ressources de la communauté .NET MAUI sur GitHub.