我做错了什么,或者这是same bug that was reported in 2008?
在下面的XAML代码段中,我使用的是自定义标记扩展程序:
[Key]
<Image Source="{wpfx:IconEx Fill={StaticResource mybrush},
Icon={StaticResource myicongeometry}}" />
是我在XAML中导入的CLR命名空间的前缀。
wpfx
是我的自定义公共标记扩展类,派生自IconEx
。
图像元素在设计器中正确呈现(即标记扩展完成其工作),但是当我尝试在VS 2015或VS 2017 RC中构建它时,我明白了:
错误:未知属性&#39;填写&#39;对于类型&#39; MS.Internal.Markup.MarkupExtensionParser + UnknownMarkupExtension&#39;在解析标记扩展时遇到。
请注意,属性MarkupExtension
在我的标记扩展类中是公共的,类本身也是如此。如果我将Fill
和Fill
属性的值更改为不使用Icon
嵌套标记扩展语法,则一切正常。问题是我无法做到这一点。
所以,鉴于它现在差不多2017年了,是否有任何不使用嵌套属性语法的解决方法,因为它看起来像是一种矫枉过正?或者我做错了什么,它;它不是一个错误?也许我会错过我的标记扩展类或它的属性的一些属性。