我的App.xaml文件中出现了一个奇怪的错误:
Element is already the child of another element.
我的App.xaml文件如下所示:
<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" x:Class="Celerior.Annapurna.SL.App"> <Application.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="ProvisiorResourceDictionary.xaml"/> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> </Application.Resources> </Application>
报告整个ResourceDictionary元素的错误(从第5行到第9行).
ProvisiorResourceDictionary.xaml包含许多样式和模板.在我看来没什么好激动的.
有谁知道什么是错的?
亲切的问候,
罗纳德威尔登伯格
解决方法
由于AnthonyWJones的评论中提供的提示,我自己找到了问题的原因.
看来Silverlight resource dictionary中的所有内容都必须是可共享的.原因是资源字典中的项目(可能)将添加到控件层次结构中的多个位置.
我的资源字典中有两个不可共享的项目.
编辑:在WPF中,您可以在资源字典中的对象上使用x:Shared
属性来强制WPF为每个资源检索创建新实例.不幸的是,Silverlight does not support这个属性.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。