2011-04-26 44 views
0

我正在创建大量WPF应用程序,这些应用程序都与一个中央WPF应用程序相关,并且需要共享相同的样式和资源。首先,我在我的主项目中创建了一个文件夹,并添加了一些XAML样式,这些样式都可以在我想要的样式中显示UI。 后来,我创建了另一个应用程序,但希望共享相同的样式,所以我将样式移动到第三个项目中,将该项目添加到主应用程序并将样式项添加到引用中。 问题是,将无法识别我的样式项目。我在项目名称的前面加上了前缀,并且根本不起作用。从不同项目合并XAML资源和样式时遇到问题

我现在已经到了可以在ResourceDictionary的路径部分中输入xaml文件的完整相对路径的地步,并且工作正常。但是,如果我将该项目移动到另一个文件夹,则会失败。我想你可能会问为什么我会这样做,并且有一些原因,比如简单地重构我的项目结构。因此,通过引用而不是文件来处理资源会更容易。

我知道答案是英寸,但我找不到任何与另一个项目的样式相关的任何东西。

我从这个网站有很大的反馈,迄今为止,任何帮助将不胜感激。

回答

1

好的,我已经猜到了!基本上,您可以将样式添加到单独项目中的一组资源字典中,然后将该项目添加到解决方案并在您的主项目中对其进行引用。我得到了那么多,但需要从我的主项目中的资源引用xaml资源文件。

我尝试使用完整路径名称,但在工作时,它不是一个很好的解决方案,因为如果我移动我的项目并重新链接它,该文件将因为无效。

我使用的语法的作品如下:

<ResourceDictionary Source="/StyleResource;component/MSResources/TabControl.xaml" /> 

哪里StyleResources是我的项目是对我的共享样式的名称,MSResources是保存XAML文件和样式项目的文件夹文件名最后是显而易见的。 我还没有读到关于“组件”的参考,但它的作品,所以我会在以后看看它,并更新这篇文章。