使用另一个合并字典的合并字典中定义的样式
下面你可以看到我是如何通过合并字典来尝试隔离样式的(我为了清洁而跳过命名空间)
App.xaml :
Colors.xaml :
HeaderStyle.xaml :
在编译期间,我收到以下错误:
找不到名称/键DarkTextForeground的资源
为了使它工作,我们必须在HeaderStyle.xaml中合并Colors.xaml ,如下所示:
任何人都可以向我解释,为什么我必须在HeaderStyle.xaml中引用Colors.xaml ?
我不能只引用不同合并字典中定义的样式吗?
我假设在HeaderStyle.xaml之前加载Colors.xaml,因此它对于稍后定义的字典应该是可见的。
这是对我在msdn论坛上的Erick Fleck 提出的问题的回应:
在您的第一个示例中,每个文件都是独立解析的,然后添加到合并的字典中,这样他们就不会知道彼此的任何信息……类似地,合并字典中的XAML不能引用“父”ResourceDictionary中的名称。 换句话说,您应该将MergedDictionaries视为单向引用。
这是它的工作方式我猜…
- 如何在文本框密码字段上禁用系统的大写锁定通知
- Web服务意外地同步运行
- 当为输入字段asp.net mvc输入不正确的数据类型时,覆盖错误消息(值’xxx’对Age无效)
- 为什么要Process.Start(“cmd.exe”,进程); 不行?
- 当使用iis express时,没有在远程PC上应用css
- ASP.NET vs SharePoint – 哪一个更适合Web开发人员?
- ElasticSearch NEST客户端不返回结果
- 在dispose之后的Reactive Rx 2.0 EventLoopScheduler ObjectDisposedException
- 为什么使用System.Threading.Thread.Sleep()是一种不好的做法?