2011-07-01 59 views
2

由于WPF和Silverlight彼此非常接近(在语法上)。Silverlight转换为WPF转换器

我的查询是,我们有任何工具可以将wpf控制转换为silverlight控制,反之亦然。

据我所知,WPF中的所有内容都不应该在Silverlight上运行,但是由于来自相同的代码库,因此是可行的。

+0

恐怕微软在这里做得很好,让他们看起来很像,但就他们的控制而言,他们相当(如果不是完全)不同。 – Bolu

+0

@Bolu:Silverlight是WPF/E的开始。 – Pradeep

+0

据我所知,Silverlight和WPF只共享XAML表示层.. – Bolu

回答

1

WPF控件建立在完整的.Net之上。

Silverlight控件建立在.Net的子集之上。

如果WPF控件在他们的使用。NET的限制则是可行一个转换将是可能的,但坦率地说,我认为会有太多的例外,使其值得的。我们需要在WPF之间共享代码(不是控件)& Silverlight我们将“链接”到公共库中的文件(该库只是一个存储库,而不是构建的)。 Xaml我们可以切割&粘贴。

+0

感谢您的详细信息。既然Silverlight = .Net的子集,那么为什么Silverlight无法转换成WPF。如果可能的话,有一个工具。 – Pradeep

+0

@Pradeep:可能的,但不值得为增益付出努力。有人需要将100个控件转换为花费时间来制作这样的工具(如果他们拥有控制源代码,他们只需重新编译)。你有没有考虑反编译控件,并用适当更改的库引用重新编译它们? –

+0

不得不说,如果这样的工具存在,现在WPF和Silverlight之间没有什么区别。 – NestorArturo

2

理论上你可以编写一个在许多情况下都能工作的转换器,但它在任何情况下都不会工作,因为这两个实现不完全兼容。如果是这种情况,可能会有很多问题在转换时无法自动解决,只需手动将其移植即可。这可能是为什么没有可用的转换器。更不用说对这样的工具几乎没有需求。