Browse Source

Allow SolidColorBrushes in style resources.

pull/464/head
Steven Kirk 10 years ago
parent
commit
f7150c65c7
  1. 1
      src/Markup/Perspex.Markup.Xaml/Context/PerspexTypeFeatureProvider.cs
  2. 33
      src/Markup/Perspex.Markup.Xaml/Converters/SolidColorBrushTypeConverter.cs
  3. 2
      src/Markup/Perspex.Markup.Xaml/OmniXAML

1
src/Markup/Perspex.Markup.Xaml/Context/PerspexTypeFeatureProvider.cs

@ -166,6 +166,7 @@ namespace Perspex.Markup.Xaml.Context
RegisterTypeConverter(typeof(RelativeRect), new RelativeRectTypeConverter());
RegisterTypeConverter(typeof(RowDefinitions), new RowDefinitionsTypeConverter());
RegisterTypeConverter(typeof(Selector), new SelectorTypeConverter());
RegisterTypeConverter(typeof(SolidColorBrush), new SolidColorBrushTypeConverter());
RegisterTypeConverter(typeof(Thickness), new ThicknessTypeConverter());
RegisterTypeConverter(typeof(TimeSpan), new TimeSpanTypeConverter());
RegisterTypeConverter(typeof(Uri), new UriTypeConverter());

33
src/Markup/Perspex.Markup.Xaml/Converters/SolidColorBrushTypeConverter.cs

@ -0,0 +1,33 @@
// Copyright (c) The Perspex Project. All rights reserved.
// Licensed under the MIT license. See licence.md file in the project root for full license information.
using System;
using System.Globalization;
using OmniXaml.TypeConversion;
using Perspex.Media;
namespace Perspex.Markup.Xaml.Converters
{
public class SolidColorBrushTypeConverter : ITypeConverter
{
public bool CanConvertFrom(ITypeConverterContext context, Type sourceType)
{
return sourceType == typeof(string);
}
public bool CanConvertTo(ITypeConverterContext context, Type destinationType)
{
return false;
}
public object ConvertFrom(ITypeConverterContext context, CultureInfo culture, object value)
{
return Brush.Parse((string)value);
}
public object ConvertTo(ITypeConverterContext context, CultureInfo culture, object value, Type destinationType)
{
throw new NotImplementedException();
}
}
}

2
src/Markup/Perspex.Markup.Xaml/OmniXAML

@ -1 +1 @@
Subproject commit 27005c8b4d41f2a6d3b85da7eb6ed994b57e0138
Subproject commit e1a5fb60b09862183ba5c48c36a52bea7a66bd42
Loading…
Cancel
Save