Files
BrightSharp.Toolkit/BrightSharp.Ui.Tests/BrushesMapList.cs
2017-08-31 16:42:47 +03:00

28 lines
1.0 KiB
C#

using System.Collections.Generic;
using System.Linq;
using System.Windows;
using System.Windows.Media;
namespace BrightSharp.Ui.Tests
{
public class BrushesMapList : Dictionary<string, object>
{
public BrushesMapList() {
var dic = Application.Current.Resources.MergedDictionaries.FirstOrDefault(x => x.Source != null && x.Source.OriginalString.Contains("style."));
if (dic == null) return;
foreach (string key in dic.Keys.OfType<string>().OrderBy(x => x)) {
var value = Application.Current.TryFindResource(key);
if (value != null) {
bool isBorder = key.Contains("Border");
if (value is Color col) {
Add(key, new { Type = "C", Brush = new SolidColorBrush(col), IsBorder = isBorder });
}
else if (value is Brush br) {
Add(key, new { Type = "Br", Brush = br, IsBorder = isBorder });
}
}
}
}
}
}