22 lines
695 B
C#
22 lines
695 B
C#
using Avalonia.Data.Converters;
|
|
using Avalonia.Markup.Xaml;
|
|
using System.Globalization;
|
|
|
|
namespace Toolkit.UI.Avalonia;
|
|
|
|
public class BooleanToPasswordCharConverter :
|
|
MarkupExtension,
|
|
IValueConverter
|
|
{
|
|
public override object ProvideValue(IServiceProvider serviceProvider) =>
|
|
this;
|
|
|
|
public char PasswordChar { get; set; }
|
|
|
|
public object? Convert(object? value, Type targetType, object? parameter, CultureInfo culture) =>
|
|
value is bool boolValue ? boolValue ? '\0' : PasswordChar : (object)PasswordChar;
|
|
|
|
public object? ConvertBack(object? value, Type targetType, object? parameter, CultureInfo culture) =>
|
|
throw new NotImplementedException();
|
|
}
|