如何在WPF中重用Silverlight项目?

时间:2010-04-22 01:51:56

标签: wpf silverlight-4.0

我想在Silverlight和WPF中使用相同的项目(类库)。所以,我最初是一个Silverlight类库。

但问题是:一些常见的类(即Point,TouchAction)存在于不同的程序集中,当我将Silverlight类库的引用添加到WPF项目时,编译器显示以下错误。

类型'System.Windows.Point'存在于'c:\ Program Files \ Reference Assemblies \ Microsoft \ Framework \ Silverlight \ v4.0 \ System.Windows.dll'和'C:\ Program Files \ Reference中组件\微软\ Framework.NETFramework \ V4.0 \ WindowsBase.dll中“

有人可以建议一个解决方法吗?

1 个答案:

答案 0 :(得分:2)

您可以尝试Prism 2.0方法:

有两个sepparated项目,但链接文件从一个到另一个。特定于一个平台的片段可以在条件编译中分离(#ifdef _SILVERLIGHT ... #elseif ... #end)

查看Multitargeting快速入门了解更多详情(尽管所有Quickstart和参考实现都有Silverlight和WPF版本,如果您只想在平台之间共享代码,则多目标样本是最简单的)。 在同一个项目中,您将找到Project Linker工具(尽管它只在我知道的VS2008中工作),它通过在将新项目添加到源项目时自动添加链接来自动保持两个或多个项目同步。

希望这有帮助!