Freigeben über


ListToStringConverter

ListToStringConverter ist ein unidirektionaler Konverter, der eine Verkettung von Membern einer Auflistung zurückgibt und dabei das angegebene Trennzeichen zwischen den einzelnen Membern verwendet.

Die Convert-Methode gibt eine Verkettung von Membern einer Auflistung zurück und verwendet dabei das angegebene Trennzeichen zwischen den einzelnen Membern.

Hinweis

Beachten Sie, dass die Trennzeichen auf folgende Weise bereitgestellt werden können:

  1. Als ConverterParameter in der Konverterbindung
  2. Als Separator-Eigenschaft für den Konverter

Beachten Sie, dass die Option ConverterParameter Vorrang vor der Separator-Eigenschaft hat.

Die ConvertBack-Methode wird nicht unterstützt. Das gegenteilige Verhalten finden Sie unter StringToListConverter.

BaseConverter-Eigenschaften

Die folgenden Eigenschaften werden in der Basisklasse public abstract class BaseConverter implementiert:

Eigenschaft Beschreibung
DefaultConvertReturnValue Standardwert, der zurückgegeben werden soll, wenn IValueConverter.Convert(object?, Type, object?, CultureInfo?) eine Exception auslöst. Dieser Wert wird verwendet, wenn CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters auf true festgelegt ist.
DefaultConvertBackReturnValue Standardwert, der zurückgegeben werden soll, wenn IValueConverter.ConvertBack(object?, Type, object?, CultureInfo?) eine Exception auslöst. Dieser Wert wird verwendet, wenn CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters auf true festgelegt ist.

ICommunityToolkitValueConverter-Eigenschaften

Die folgenden Eigenschaften werden im public interface ICommunityToolkitValueConverter implementiert:

Eigenschaft Typ Beschreibung
DefaultConvertReturnValue object? Standardwert, der zurückgegeben werden soll, wenn IValueConverter.Convert(object?, Type, object?, CultureInfo?) eine Exception auslöst. Dieser Wert wird verwendet, wenn CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters auf true festgelegt ist.
DefaultConvertBackReturnValue object? Standardwert, der zurückgegeben werden soll, wenn IValueConverter.ConvertBack(object?, Type, object?, CultureInfo?) eine Exception auslöst. Dieser Wert wird verwendet, wenn CommunityToolkit.Maui.Options.ShouldSuppressExceptionsInConverters auf true festgelegt ist.

Syntax

XAML

Einbinden des XAML-Namespace

Um das Toolkit in XAML verwenden zu können, muss der folgende xmlns-Abschnitt zu Ihrer Seite oder Ansicht hinzugefügt werden:

xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"

Der folgende Abschnitt:

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

Würde dann geändert werden, um xmlns einzubinden:

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

Verwenden von ListToStringConverter

ListToStringConverter kann wie folgt in XAML verwendet werden:

<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.ListToStringConverterPage">

    <ContentPage.Resources>
        <ResourceDictionary>
            <toolkit:ListToStringConverter x:Key="ListToStringConverter" Separator="," />
        </ResourceDictionary>
    </ContentPage.Resources>

    <Label Text="{Binding MyListValue, Converter={StaticResource ListToStringConverter}}" />

</ContentPage>

C#

ListToStringConverter kann wie folgt in C# verwendet werden:

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

        label.SetBinding(
            Label.TextProperty,
            new Binding(
                static (ViewModels vm) => vm.MyListValue,
                converter: new ListToStringConverter() { Separator = "," }));

        Content = label;
    }
}

C#-Markup

Das Paket CommunityToolkit.Maui.Markup bietet eine viel präzisere Möglichkeit, diesen Konverter in C# zu verwenden.

using CommunityToolkit.Maui.Markup;

class ListToStringConverterPage : ContentPage
{
    public ListToStringConverterPage()
    {
        Content = new Label()
            .Bind(
                Label.TextProperty,
                static (ViewModel vm) => vm.MyListValue,
                converter: new ListToStringConverter(),
                converterParameter: ",");
    }
}

Eigenschaften

Eigenschaft Typ Beschreibung
Trennzeichen string Der Wert, der die einzelnen Elemente in der Auflistung trennt. Dieser Wert wird durch den ConverterParameter ersetzt, sofern angegeben. Wenn ConverterParameter null ist, wird diese Separator-Eigenschaft verwendet.

Beispiele

Ein Beispiel für diesen Konverter in Aktion finden Sie in der Beispielanwendung für das .NET MAUI Community Toolkit.

API

Sie finden den Quellcode für ListToStringConverter über das GitHub-Repository für das .NET MAUI Community Toolkit.