gpt4 book ai didi

c# - 如何制作依赖于 System.Drawing 命名空间的现有 C# 代码的 Silverlight 版本

转载 作者:太空狗 更新时间:2023-10-29 22:17:30 25 4
gpt4 key购买 nike

我们有很多严重依赖 System.Drawing 命名空间的 C# 2.0 代码。还有一些 WinGDI 依赖项(通过互操作)。

您建议如何解决制作功能等效的 Silverlight 代码版本的问题?我们希望尽可能多地重用代码,因为我们希望继续开发代码的两个版本。

也许您可以推荐一些文章/书籍?

更新:该代码是一个非可视化组件。不是申请。没有第 3 方依赖项。

最佳答案

我在创建以前使用 winforms 构建的软件的 wpf/silverlight 版本方面拥有丰富的经验。这很可悲,但在你的情况下,当你使用大量互操作和 System.Drawing 东西时,实际上不可能做这样的事情。

当然,你总是可以尝试(实际上你总是必须)将你的业务逻辑与界面分开,但在这种情况下(我希望我错了!),你的界面必须完全重新设计,因为winforms 和 wpf/silverlight 的架构差异。

根据我的经验,这个问题是这样解决的:所有旧的 winforms 组件保持不变,但所有新功能都是使用 wpf 构建的,帮助将 wpf 控件注入(inject) winforms 应用程序。

是的,有时这很奇怪,但它确实比浪费所有旧代码并花费大量时间和金钱来编写新代码更有效率,这样做是一样的。

关于c# - 如何制作依赖于 System.Drawing 命名空间的现有 C# 代码的 Silverlight 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4401667/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com