InvertedBoolConverter
InvertedBoolConverter
ist ein Konverter, mit dem Benutzer*innen bool
in das Gegenteil umwandeln können – true
wird zu false
und umgekehrt.
Die Methode Convert
gibt false
zurück, wenn das angegebene value
gleich true
ist, ansonsten gibt sie true
zurück.
Die Methode ConvertBack
gibt false
zurück, wenn das angegebene value
true
ist, ansonsten gibt sie true
zurück.
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 InvertedBoolConverter
InvertedBoolConverter
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.InvertedBoolConverterPage">
<ContentPage.Resources>
<ResourceDictionary>
<toolkit:InvertedBoolConverter x:Key="InvertedBoolConverter" />
</ResourceDictionary>
</ContentPage.Resources>
<Label Text="The value is false."
IsVisible="{Binding MyValue, Converter={StaticResource InvertedBoolConverter}}" />
</ContentPage>
C#
InvertedBoolConverter
kann wie folgt in C# verwendet werden:
class InvertedBoolConverterPage : ContentPage
{
public InvertedBoolConverterPage()
{
var label = new Label { Text = "The value is false." };
label.SetBinding(
Label.IsVisibleProperty,
new Binding(
static (ViewModels vm) => vm.MyValue,
converter: new InvertedBoolConverter()));
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 InvertedBoolConverterPage : ContentPage
{
public InvertedBoolConverterPage()
{
Content = new Label { Text = "The value is false." }
.Bind(
Label.IsVisibleProperty,
static (ViewModel vm) => vm.MyValue,
converter: new InvertedBoolConverter());
}
}
Beispiele
Ein Beispiel für den Einsatz dieses Konverters finden Sie in der Beispielanwendung für das .NET MAUI Community Toolkit.
API
Sie finden den Quellcode für InvertedBoolConverter
über das GitHub-Repository für das .NET MAUI Community Toolkit.
.NET MAUI Community Toolkit