我正在考虑将我的c#应用程序从使用自定义GDI +绘制控件迁移到带有自定义控件等的WPF应用程序.我想知道涉及的内容和期望的内容.
人们可以推荐哪些资源可能会有所帮助吗?或者确实任何可能有益的个人经历?
cpl*_*tts 37
(我为这篇长篇文章提前道歉......我想传达的内容真是太多了......我希望它可以帮到你.)
这就是我们现在正在做的事情(将大量使用自定义(GDI +)绘制控件的Windows窗体应用程序迁移到WPF).事实上,我在团队中的角色是构建这些GDI +控件......现在构建WPF控件.
我同意Bijington的说法,让你的应用程序从头开始完全100%WPF是你要走的路...如果你能说服那些能够走这条路的权力.但是,我们自己正在使用WPF互操作功能就地转换我们的Windows窗体应用程序.有一些限制,但总的来说它是一种有效的方法(而不是像我预期的那样令人沮丧).
我建议您使用一个GDI +控件并在WPF中构建相同的控件.然后,当你完成后,扔掉它再做一次.你会在第一次努力中总是学到一些东西......并发现有一种更好的方法可以做到.我会从小事开始......自定义按钮是一个很好的开始.
执行上述操作可以让您体验到您想要做的其他事情所需的内容.
我要警告你的一件事是WPF的学习曲线,特别是如果你来自Windows窗体背景......特别是如果你要构建自定义控件.正如安倍所说,这是一个完全不同的世界.WPF肯定会带来很多功能,但这种功能是以学习如何使用它为代价的.Abe提到WPF中的自定义控件是如何"看起来"的,并且它们的"外观"可以通过ControlTemplate提供.这只是WPF中提供用户界面的自定义部分的众多方法之一.
让我列举一些其他方法:
在Windows窗体中,就像他们给你一把锤子(UserControl)和一把螺丝刀(Control).但是,在WPF中......他们已经为您提供了所有100个工具的整个工具箱.这是大于正常学习曲线的部分原因.然而,现在你可以把你以前从未见过的锯子用来锯掉2x4的末端,而不是用锤子和/或螺丝刀试着做同样的事情.
(好消息是,有很多资源可以帮助你.)
MSDN
我同意Bijington认为MSDN文档非常出色.
博客
在一个我在论坛上面部分引用两个StackOverflow的帖子,我点了一组我的"必读"名单上的博客.特别是,我特别指出Pavan Podila和Kevin Moore的博客.Kevin Moore曾经是WPF控件的WPF程序管理器,他有一套很好的控件,称为WPF Bag-o-Tricks很有用,但更重要的是,你可以学习控件.
样品,样品和更多样品
那里只有大量的样品.几乎太多了!我将指向Family.Show(它是作为WPF的端到端参考样本创建的),我将指向WPF SDK示例,特别是该部分中的Control Customization示例.
| 归档时间: |
|
| 查看次数: |
10791 次 |
| 最近记录: |