然而,内部令人遗憾地得出结论,与我们的竞争对手相比,我们的产品看起来有点陈旧,而且还有一些需要做的事情.
我目前正在开发一个与其他产品完全分开的UI区域.因此,在开始UI的其余部分的漫长过程之前,我已经有机会尝试“新”技术堆栈作为一种证明.
我在空闲时间一直使用Windows窗体和.net框架一段时间,享受它,但有点担心由互操作引起的头痛.虽然UI的这个特定分支不需要与传统的C代码库进行很多的互操作,但我可以看到这将成为未来的一个问题.
替代方案只是继续使用MFC,但尝试利用VS2008附带的新功能包.这是我最简单的选择,但我担心长寿,而不是利用这个优点.net …
那么我选哪个?我们是一个小团队,所以我的建议很可能被接受为我们发展的未来方向 – 我想要正确的.
MFC死了吗C#/ Winforms的前进方向吗?还有什么我完全失踪的吗?帮助非常感谢!
解决方法
你可以这样做几种方法:
>您的MFC视图主机WPF内容(见here)
>对于MFC MDI应用程序,创建一个新的WinForms框架并托管您的MFC MDI视图(见here)
> MFC对话框和视图中的主机WinForms用户控件(参见here)
采用WPF(选项1)的问题是它需要您一次重写所有的UI,否则会看起来很精神分裂症.
第二种方法看起来可行但非常复杂.
第三种方法是我们选择的方法,它的工作非常好.它允许您有选择地刷新应用程序的区域,同时保持整体的一致性,而不是触摸未损坏的东西.
Visual C 2008功能包看起来很有趣,我没有玩过它.似乎这可能有助于您的过时的外观问题.如果“功能区”对您的用户来说太刺耳,您可以查看第三方MFC和/或WinForms控制供应商.
我的总体建议是,互相增量的变化绝对比扫荡的变化更好.
阅读后续行动后,我肯定可以肯定,该框架的生产力收益大大超过了学习的投资.我们团队中没有人在开始使用C#,现在我们都喜欢它.