如果我以这种方式设置绑定,是否会对性能产生显着影响:
<TextBlock Text="{Binding Source={x:Static SystemColors.ActiveBorderBrush}}/>
而不是这样:
<TextBlock Text="{x:Static SystemColors.ActiveBorderBrush}"/>
或者我是否还有其他缺点?
这里已经描述了不同之处:Binding Source vs x:Static。但是没有关于性能影响/缺点的陈述。
答案 0 :(得分:0)
如果我以这种方式设置绑定,是否会对性能产生明显的影响?
不,没有规定静态属性实际上返回的值是Text
属性TextBlock
当然可以设置为:)
换句话说,这样做之间没有不可忽视的性能差异:
<TextBlock Foreground="{Binding Source={x:Static SystemColors.ActiveBorderBrush}}" Text="Test"/>
......而且这个:
<TextBlock Foreground="{x:Static SystemColors.ActiveBorderBrush}" Text="Test"/>
x:Static
理论上可能更快,因为它不执行任何转换,但在2017年的计算机上,这几乎可以忽略不计。