0

我在 Silverlight 中做了一个具有SolidColorBrush属性的控件。在 XAML 中,您可以将其设置为预先存在的颜色,例如黑色、黄色、白色等。我假设有一个TypeConverter接受字符串“黑色”并将其转换为颜色对象并SolidColorBrush基于此对象创建新的颜色。我希望保留此功能,但增加了接受十六进制字符串来设置颜色的功能。我需要一个TypeConverter,对吗?有没有一种方法可以从当前扩展,以便我仍然可以传递颜色名称?

4

2 回答 2

4

XAML 已经接受十六进制。例如:

Background="#FF9D661C"

在 XAML 元素上打开 VS 属性窗格有助于指示通过智能不一定明显的可能性(例如,将背景设置为十六进制或渐变画笔)。

于 2012-04-25T15:45:42.563 回答
1

正如@Ricibob 所说,现有的转换器已经可以按照您的意愿工作。此外,看起来所有内置的 TypeConverters 都是密封的,因此您不能从它们继承(尽管没有什么可以阻止您使用组合来解决问题)。

于 2012-04-25T15:54:07.827 回答