本文原文地址: 这些.NET开源项目你知道吗?(第三缉).NET开源文档及报表处理
初学.NET或者是C#的同学,肯定很多都是先接触WinFrom,如果自己做一些小工具,可能就是拖一些简单的控件,进行组合,编写代码。我曾经也这样干过,有时候有几个表,几十个字段,拖控件,非常累,拖的过程中,我曾经也想过,能不能做成通用的,因为对数据库来说,增删查改过程都差不多。直到我接触到XCode组件后,我才知道,我真的可以这么干,然后我自己动手,写了一个WinForm界面生成的模版,自动生成数据库表的WinForm界面,然后附加生成基本的增删查改代码。当时兴奋了好一阵,还用在一些地方。可惜那之后逐步抛弃了WinForm,再也没去维护和更新,自己技术能力有限。
然而一次偶然的机会,发现了这个开源项目,如果早些年接触,也许我那个模版可以做的更智能,也许就没有这么多遗憾。这个项目我初步使用了一下,总体感觉还是不错的,能自动根据实体类生成表单界面,界面也比我以前的漂亮,当然代码和结构更清晰。虽然可能还有一些瑕疵,而且也停止了更新,我觉得这个项目对初学或者以后长期想做WinForm的朋友,是一个很好的借鉴和参考。它直接支持的数据类型有:
int, string, double, float, long, decimal, short, bool, List<T>, Vector2 (是Microsoft.Xna.Framework框架里面的一个类型,最好手动删除了,如果项目用到才加进去)
看看它的界面:
官方网站: http://winformgenerator.codeplex.com/
在Web开发中,Html编辑器使用很广泛很常见,而且开源的非常多,但在WinForm中,偶尔也是要用到的。这个就是一个非常不错的开源Winform下面的Html编辑器。包括的基本功能和Word差不多了,常规的格式功能都有,以及清除MS-Word格式、拼写检查、插入表格、日期、时间,上标、下标和打印功能等等。非常值得一试。我将在近期写一篇这个编辑器详细使用的文章,大家可以关注博客,就是.NET平台开源项目速览系列。看看它的界面:
官方网站: http://tewuapple.github.io/WinHtmlEditor/
作者博客: http://www.cnblogs.com/tewuapple/archive/2012/06/30/2570894.html
HtmlTextbox for Windows.Forms是另外一个WinForm下的Html编辑器。功能上更加轻量级,合适一些简单场合,有时候复杂也不好,就想Web编辑器一样,也会有很多简单版本。只不过比较遗憾,已经停止了更新,但作为一个独立的小的组件,基本功能比较完善,也差不多了,可以作为学习借鉴的例子。下面是其界面,感觉还是非常赞的。
官方网站: http://winformhtmltextbox.codeplex.com/
自动更新在Winform开发中也是比较常见的,特别是在客户端很多的情况下,每一个重新下载部署是比较麻烦的,采用自动升级的方式非常快,可以节省不要时间。目前版本稳定,没有进行更新,可以满足大部分日常升级需求。升级界面如下:
官方网站: http://autoupdater.codeplex.com/
作者博客: http://www.cnblogs.com/KnightsWarrior/
这个组件在不使用INotifyPropertyChanged的情况下进行数据通知和同步,使用代码来绑定事件实现。支持WinForm, WPF, Silverlight 3/4/5,以及Windows Phone 7/7.1。在WPF中可能这个比较容易实现,不过这个控件已经实现了很多东西。在WinForm中这种使用有时候是需要的,而且实现起来比较麻烦。这个控件的目的就在于此。现在也是稳定版本,有比较长时间没有进行更新。看看一个官方的演示视频:
官方网站: http://updatecontrols.net/cs/
http://updatecontrols.codeplex.com/
MoneyBox是一个WinForm中专门用于输入金融数字格式的控件。类似一个文本框,但只能输入数字,因此不再需要提示用户输出错误或者逻辑检查,这种情况还是很常见的。因此控件的功能单一,目标挺明确。新手可以看看学习如何封装一个控件,以及注意的事项。注意该控件没有更新,以前的版本应该是.NET 3.5,大家使用或者学习可以自己单独下载,修改编译后再使用。
官方网站: http://moneyboxforwinforms.codeplex.com/
另外一个类似的数字文本框控件是winformnumberbox,功能差不多吧,可以看看:
官方网站: http://winformnumberbox.codeplex.com/
Spell Check Winforms TextBox拼写检查文本框,是一个辅助组件,我们在Word编辑文字的时候,就会有这种拼写检查提示。可以对用户的输入做一些检查和提示。是一个非常小的功能吧,至于使用大家可以借鉴其核心代码,直接用当然也可以。功能都比较实用,看看截图:
官方网站: http://spellchecktextbox.codeplex.com/
Group Controls是一个集合控件,可以将RadioButtonList,CheckBoxList控件作为一个集合放在一起,并进行设置。同时还有一些辅助增强功能,例如CheckBox以前只是一个选项,而在这个控件中,每一个子项目都是可以设置描述的,的确是更方便,更人性化。看看下面的设计视图:
官方网站: http://groupcontrols.codeplex.com/
其他一些小组件,玩玩学习学习吧。毕竟WinForm现在不经常用了,初学者可以看看。
1.专业的WinForm日期视图控件,Calendar,官方网站: http://bettercalendar.codeplex.com/
2.Winforms圆角组合框控件:官方网站: http://roundedgroupbox.codeplex.com/