`
jiasongmao
  • 浏览: 675667 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论

wpf开源项目

    博客分类:
  • WPF
 
阅读更多

SharpDevelop

SharpDevelop是一款用C#开发的开发工具。这是笔者第一个接触的WPF项目。对于源码笔者也只是看过部分。当年笔者是从事JAVA开发的。对于JAVA的OSGI思想很感兴趣。也曾试着寻找有没有.NET大神写一些类似的框架。只是可惜太少了,有的也是半成品不是真正的OSGI。不过.NET有一个自己的想法——插件思想。这也是笔者查看他源码的原因。他虽然没有OSGI的思想,可是笔者对他的插件实现还是有一定的兴趣的。所以有兴趣的读者们可以试着去看一下。好吧。有一点远了。SharpDevelop他可以说是WPF和Winform的组合体。他有一部分是WPF实现。而有一些却是用Winform。当然读者们会想着这样子也行。不怕出问题吗?问题是不会太大。只是笔者还是建议不要这样子用。鬼知道他们俩个将来会什么样子。当然如果只是一次项目的话,为了方便到是可以这样子做。反正项目做完就是拜拜了。不用维护。SharpDevelop有一点大,想要吃通他的话,需要一定的时间和精力。不过他真的是一款学习PC端开发的最佳开源项目之一。

SharpDevelop的下载地址:https://github.com/2594636985/SharpDevelop

Xceed.Wpf.Toolkit

Xceed.Wpf.Toolkit是一个框架。他自定义一些常用的组件。比如加载提示框。复杂的列表。 Xceed.Wpf.Toolkit只有表现层用到的知识,没有什么业务逻辑,所以学习起来还是比较易容的。不像上面SharpDevelop那样子。还要结合WinForm。他的源码笔者大部分都看过了。那么我们要学习他的什么呢?当然学习他如何实现用户自定义化组件的。现在他又更新了新的版本。不过很多源码没有什么变化。命名习惯还是那样子让笔者很不喜欢。但是不得不说他是进入WPF用户自定义组件最佳导师。初级的WPF学习者可以看这个开源项目。

Xceed.Wpf.Toolkit下载地址:http://wpftoolkit.codeplex.com/

Modern UI for WPF

笔者由了上面俩个项目的经历之后,又遇到了WPF生命中的最佳战友——Modern UI for WPF开源项目(又称mui)。正如上面所讲的笔者一直在查看插件思想。而Modern UI for WPF不管是在对WPF的实现上,还是在编辑思想上绝对是良作。如何你学习了Modern UI for WPF又研究了他的源码。那么你可以很轻易的改动他的框架来实现你做需要的架构。可以这样子讲Xceed.Wpf.Toolkit是面向WPF的深度。而Modern UI for WPF可以说是广度。你学习组件知识可以选Xceed.Wpf.Toolkit。如果你想学习如何开发WPF的话Modern UI for WPF不二人选。你可以从源码中看到如何切换界面。如何实现界面之间的交互。并且你还可以看到如何排版资源。

Modern UI for WPF下载地址:https://github.com/firstfloorsoftware/mui

MaterialDesignInXamlToolkit

当我遇到MaterialDesignInXamlToolkit开源项目的时候,我才知道原来WPF还可以做到这么好的效果。如果MaterialDesignInXamlToolkit是一个好动的年青人的话,那么Modern UI for WPF无疑就是一个经历过岁月的老人。MaterialDesignInXamlToolkit在动画和美工上做了很大的功夫。可惜笔者却无力消受。该死的餐饮行业。每一个按扭的动画效果足以让你美美的睡上一觉。美中不足的是作者用的是4.5.2以上的.NET Framework语法进行编写。所以你可能要手动的修改回来。变成4.5或是4.0。至少笔者是这样子做的。同后面的代码习惯让笔者叹了一口气。这也没有规则了吧。

MaterialDesignInXamlToolkit下载地址:https://github.com/ButchersBoy/MaterialDesignInXamlToolkit

MahApps.Metro

和MaterialDesignInXamlToolkit一样子,可惜在笔者看来他没有MaterialDesignInXamlToolkit来的效果,又没有Modern UI for WPF在大体上表现出众。可以说MahApps.Metro对学习WPF来讲比较平稳。没有过多的亮点。可能笔者有了上面三个开源项目的经历之后。在去看MahApps.Metro显示有一点知识疲劳。所以笔者一般只是把他当作小情人来看待。如果上面三个开源项目都没有找到笔者需要的时候,才会去找MahApps.Metro。

MahApps.Metro下载地址:https://github.com/MahApps/MahApps.Metro

笔者看了很WPF的开源应用项目。最后留下来也就是这几个。在后面的开发过程中,笔者也是靠这里个开源项目决解了很多开发上的问题。在开发过程很明显的感受与Winform有着根本上的不同。最大的体现是WPF的引入了MVVM模式开发。为此还出现了很多开源的MVVM框架。其中最出名有Prism、MvvmLight等。很不幸的是笔者都没有用过。不是笔者不想去用。而是觉得用了,在一定程序上会减少了WPF的灵活性。如果要推存的话,笔者会选择Caliburn.Micro开源项目。对于Caliburn.Micro的应用到是有一个开源的小项目。读者们可以去了解一下——gemini

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics