27 lines
712 B
C#
27 lines
712 B
C#
|
|
using System;
|
|||
|
|
using System.Linq;
|
|||
|
|
using System.Text.RegularExpressions;
|
|||
|
|
using System.Windows.Data;
|
|||
|
|
|
|||
|
|
|
|||
|
|
namespace WPFluent.Converters;
|
|||
|
|
|
|||
|
|
public 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;
|
|||
|
|
}
|
|||
|
|
}
|