27 lines
715 B
C#
27 lines
715 B
C#
using System;
|
|
using System.Linq;
|
|
using System.Text.RegularExpressions;
|
|
using System.Windows.Data;
|
|
|
|
|
|
namespace WPFluent.Converters;
|
|
|
|
internal class StringToColorConverter : IValueConverter
|
|
{
|
|
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
|
|
{ return value.ToString(); }
|
|
|
|
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
|
|
{
|
|
string str = value.ToString();
|
|
Regex regex = new Regex("^#(?:[0-9a-fA-F]{3}){1,2}$");
|
|
if (regex.IsMatch(str))
|
|
{
|
|
var color = ColorConverter.ConvertFromString(str);
|
|
return color;
|
|
}
|
|
|
|
return Binding.DoNothing;
|
|
}
|
|
}
|