【发布时间】:2010-12-27 14:46:52
【问题描述】:
我在模板类中构造了一些 xaml,我需要一个矩形来将 Fill 属性设置为来自最终用户填充的文本框的内容。因此,我需要在输出 xaml 之前验证该值是否可转换为 Brush 对象。否则,如果该值不是有效的颜色(已命名或未命名),我会得到以下信息:错误:Sys.InvalidOperationException:控件“sldivparent”的无效 XAML。 [](第 6 行,第 412 列):无法从文本“NotValidColorValue”创建“System.Windows.Media.Brush”。显然,我不希望这样,如果值无效,我只希望它是白色的。
那么在继续之前如何确保“NotValidColorValue”是一个有效的颜色值?
谢谢
编辑以进一步澄清: 我正在使用颜色选择器,准确地说是从 silverlight 调用 YUI 颜色选择器,并且工作正常。问题是用户还可以直接在文本框中输入颜色(#112233 或“红色”),并且该颜色需要有效,如果无效则显示为白色。我不想 进入颜色名称的整个手动检查,所以理想情况下,我想尝试使用用户输入的任何内容创建某种类型的对象(可能是一些 Brush 衍生物),如果不成功,我会知道颜色值无效并采取相应措施。
【问题讨论】:
标签: silverlight validation colors