关于绑定的用法:WPF纯色刷子

时间:2013-02-22 06:40:13

标签: c# wpf

我有一个定义网格的UserControl,如下所示:

<Grid ClipToBounds="True"
      x:Name="GHeader"
      Grid.Row="0"
      Grid.Column="0"
      Background="{DynamicResource BrushRoomHeaderBackground}"
      >

在ResourceDictionary中定义了以下样式,它们在开头加载:

<SolidColorBrush x:Key="BrushRoomHeaderBackground" 
                 Color="{DynamicResource ColorPassive}"
                 /> 

<Color x:Key="ColorPassive">#FF9499C0</Color>

应该使用DynamicResource绑定还是StaticResource? 这里可能有任何内存泄漏吗?

1 个答案:

答案 0 :(得分:1)

正如Manish所说,您应该查看他的链接,以便更好地了解静态和动态资源之间的区别。

短篇小说是:

  • StaticResource在加载XAML期间解析(在应用程序运行之前只有一次)
  • DynamicResource在运行时解析,如果源字典更改
  • 将更新

所以对你来说问题是:你是否计划在运行时更新你的词典,或者至少是你在网格声明后定义的资源?如果没有,请选择StaticResource以获得清晰度和性能。