WPF关于 附加属性绑定异常 ,导致页面加载缓慢
最近项目在启动的时候,经常出现Xmal的类型转换的异常 :引发的异常:“MS.Internal.Xaml.Parser.GenericTypeNameParser.TypeNameParserException”(位于 System.Xaml.dll 中)
经过一番排查:发现在绑定附加属性的时候抛出的异常:
出现异常的写法:
<Setter TargetName="image" Property="Source" Value="{Binding (attach:ControlHelper.ImagePressed),RelativeSource={RelativeSource TemplatedParent}}"></Setter>
修改后不抛异常的写法:
<Setter TargetName="image" Property="Source" Value="{Binding Path=(attach:ControlHelper.ImagePressed),RelativeSource={RelativeSource TemplatedParent}}"></Setter>
总结:在绑定附加属性的时候,需要在绑定的属性前,显式指定 Path=