10

是否有任何示例可以清楚地说明静态资源和动态资源之间的区别。我知道静态加载一次并在启动时绑定而动态在运行时加载并在每次控件重新加载时重新绑定的基本区别。

提前致谢

4

2 回答 2

15

如果在元素的应用程序运行时更改了桌面颜色,则元素将保持其原始颜色:

<Button>
  <Button.Background>
    <SolidColorBrush Color="{StaticResource {x:Static SystemColors.DesktopColorKey}}" />
  </Button.Background>
  Hello
</Button>

另一方面,如果元素的颜色是使用 DynamicResource 设置的,它会随着桌面颜色的改变而改变:

 <Button>
      <Button.Background>
        <SolidColorBrush Color="{DynamicResource {x:Static SystemColors.DesktopColorKey}}" />
      </Button.Background>
      Hello
    </Button>
于 2011-04-13T09:24:58.127 回答