You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ResourceDictionary中设置一个条目值等于另一个已有条目值?

问题:在ResourceDictionary中复用已有资源的值

我遇到一个看似简单的问题,但找不到相关文档解决。我希望在ResourceDictionary中,将一个条目的值设置为字典中另一个条目的值。示例代码如下:

<x:String x:Key="MyMapPin">&#xf276;</x:String>
<x:String x:Key="MyIconPickup">{?? MyMapPin}</x:String>
<x:String x:Key="MyIconDestination">{?? MyMapPin}</x:String>

请问是否有办法让MyIconPickup和MyIconDestination的值与MyMapPin相同?

补充说明:我这么做的原因是,未来可能需要让MyIconPickup或MyIconDestination偏离MyMapPin的值,届时无需逐个修改所有图标实例;或者仅修改MyMapPin,就能改变所有基于它的图标,这属于基本的继承需求。

解决方案

你可以通过StaticResource或DynamicResource标记扩展实现资源复用,二者的区别在于是否支持动态更新:

  • 使用StaticResource(静态引用,加载时解析,性能更优)
<x:String x:Key="MyMapPin">&#xf276;</x:String>
<x:String x:Key="MyIconPickup">{StaticResource MyMapPin}</x:String>
<x:String x:Key="MyIconDestination">{StaticResource MyMapPin}</x:String>
  • 使用DynamicResource(动态引用,运行时可响应资源值变化,更匹配你“修改基准值同步更新所有派生图标”的需求)
<x:String x:Key="MyMapPin">&#xf276;</x:String>
<x:String x:Key="MyIconPickup">{DynamicResource MyMapPin}</x:String>
<x:String x:Key="MyIconDestination">{DynamicResource MyMapPin}</x:String>

额外说明

如果后续需要让某个图标脱离基准值,直接修改对应Key的资源内容即可,比如把MyIconPickup改成独立的字符串值,无需改动所有引用它的实例。

内容的提问来源于stack exchange,提问作者LairdPleng

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 18:22:39