Пролистайте кисти в Silverlight, чтобы получить все возможные цвета
У меня есть класс, который работал над предыдущим проектом, в котором были циклически перебраны все доступные цвета в приложении WPF, это показано ниже;
public class ListOfColors
{
public List<ComboBoxItem> SelectableColours;
private PropertyInfo[] _propInfo;
public List<ComboBoxItem> GetListOfColours()
{
List<ComboBoxItem> SelectableColours = new List<ComboBoxItem>();
Type brushesType = typeof(Brushes);
PropertyInfo[] colors = brushesType.GetProperties();
_propInfo = colors;
foreach (var color in colors)
{
ComboBoxItem colour = new ComboBoxItem();
colour.Content = color.Name;
SelectableColours.Add(colour);
}
return SelectableColours;
}
}
Это прекрасно работает с моим приложением WPF, но сейчас я пытаюсь повторить то же самое в проекте silverlight, но он говорит, что мне не хватает директивы using или ссылки на сборку. Я пытался добавить System.Windows.Media
ссылка, но это все еще говорит, что я скучаю по нему.
Есть ли шаг, который я пропускаю, или мне нужно вернуть другой тип, я попытался использовать Colors
как тип, но это возвращает ограниченное количество цветов, всего 15;
Type brushesType = typeof(Colors);
1 ответ
Silverlight не имеет Brushes
класс, и, как вы заметили, Colors
класс имеет ограниченное количество.
Я предлагаю вам сделать свою собственную версию Colors
в этом есть все
Смотрите: http://lotsacode.wordpress.com/2010/02/27/translating-c-color-to-silverlight-color/