【发布时间】:2010-05-28 19:17:36
【问题描述】:
我已经创建了我想在我的 WPF 应用程序的多个 xaml 页面中使用的控件样式。为此,我创建了一个 Resources.xaml 并在其中添加了样式。
然后在我的页面中添加此代码
<Grid.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/SampleEventTask;component/Resources.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Grid.Resources>
在两页上这工作正常,但在第三页上我得到一个编译错误,上面写着:
添加到 IDictionary 的所有对象 必须有一个 Key 属性或一些 其他类型的键关联 他们。
如果我为此添加一个键,例如 ResourceDictionary x:Key="x",那么会出现编译错误,但在运行应用程序时会出错。
我可以通过将原始(未指定键)“ResourceDictionary”xaml 从顶级 Grid 移动到该页面上包含的 Grid 来消除编译错误并运行应用程序。
但我不明白这里发生了什么。关于问题是什么的任何建议,我只是错过了一些东西或做错了一些事情。有没有更好的方式来分享样式?
谢谢
【问题讨论】: