前面3个月的时间内,这些.NET开源项目你知道吗?系列文章已经发表了3篇,共计45个平时接触比较少,曾经默默无闻的.NET开源项目,展示给大家,当然不是每个人都能用得上,但也的确是有些人用了,反响还不错,所以非常感谢大家的支持。由于收藏夹的项目越来越少,越整理到最后,越发现一些问题,所以就按专题来分开。今天分享给大家的是关于WinForm开发相关的小巧灵活的开源项目。虽然现在WinForm开发可能不常见了,都转向B/S了,但偶尔还是有用到的地方的,特别是学校,以及一些研究演示之类的。所以这篇文章部分项目的实用性可能不高,但的确是一个非常值得学习的东西。因为看到这些功能组件,我会想到我刚自学入门的时候,是多么的难过,每天拖控件,想自己做一个都那么难,就是因为没接触到这些东西。所以分享是总结,是一个过程,不要让大家重复的踩坑和减少重复时间。所以特意做一个总结专题,以后如果有部分优秀的,也会单独更新在博客的。

.NET开源目录:【目录】本博客其他.NET开源项目文章目录

本文原文地址:分享几个.NET WinForm开源组件,纪念逐渐远去的WinForm

1.WinForm界面生成器

  初学.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/

2.WinHtmlEditor编辑器

在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

3.轻量级的编辑器HtmlTextbox

HtmlTextbox for Windows.Forms是另外一个WinForm下的Html编辑器。功能上更加轻量级,合适一些简单场合,有时候复杂也不好,就想Web编辑器一样,也会有很多简单版本。只不过比较遗憾,已经停止了更新,但作为一个独立的小的组件,基本功能比较完善,也差不多了,可以作为学习借鉴的例子。下面是其界面,感觉还是非常赞的。

官方网站: http://winformhtmltextbox.codeplex.com/

4.Autoupdater自动更新

自动更新在Winform开发中也是比较常见的,特别是在客户端很多的情况下,每一个重新下载部署是比较麻烦的,采用自动升级的方式非常快,可以节省不少时间。目前版本稳定,没有进行更新,可以满足大部分日常升级需求。升级界面如下:

官方网站:http://autoupdater.codeplex.com/

作者博客:http://www.cnblogs.com/KnightsWarrior/

5.updatecontrols数据更新控件

这个组件在不使用INotifyPropertyChanged的情况下进行数据通知和同步,使用代码来绑定事件实现。支持WinForm, WPF, Silverlight 3/4/5,以及Windows Phone 7/7.1。在WPF中可能这个比较容易实现,不过这个控件已经实现了很多东西。在WinForm中这种使用有时候是需要的,而且实现起来比较麻烦。这个控件的目的就在于此。现在也是稳定版本,有比较长时间没有进行更新。看看一个官方的演示视频:

 官方网站:http://updatecontrols.net/cs/

http://updatecontrols.codeplex.com/

6.货币文本框控件

MoneyBox是一个WinForm中专门用于输入金融数字格式的控件。类似一个文本框,但只能输入数字,因此不再需要提示用户输出错误或者逻辑检查,这种情况还是很常见的。因此控件的功能单一,目标挺明确。新手可以看看学习如何封装一个控件,以及注意的事项。注意该控件没有更新,以前的版本应该是.NET 3.5,大家使用或者学习可以自己单独下载,修改编译后再使用。

官方网站: http://moneyboxforwinforms.codeplex.com/

  另外一个类似的数字文本框控件是winformnumberbox,功能差不多吧,可以看看:

官方网站: http://winformnumberbox.codeplex.com/

7.Spell Check TextBox拼写检查

  Spell Check Winforms TextBox拼写检查文本框,是一个辅助组件,我们在Word编辑文字的时候,就会有这种拼写检查提示。可以对用户的输入做一些检查和提示。是一个非常小的功能吧,至于使用大家可以借鉴其核心代码,直接用当然也可以。功能都比较实用,看看截图:

  官方网站: http://spellchecktextbox.codeplex.com/

8.分组控件Group Controls

  Group Controls是一个集合控件,可以将RadioButtonList,CheckBoxList控件作为一个集合放在一起,并进行设置。同时还有一些辅助增强功能,例如CheckBox以前只是一个选项,而在这个控件中,每一个子项目都是可以设置描述的,的确是更方便,更人性化。看看下面的设计视图:

  官方网站: http://groupcontrols.codeplex.com/

9.其他

  其他一些小组件,玩玩学习学习吧。毕竟WinForm现在不经常用了,初学者可以看看。

1.专业的WinForm日期视图控件,Calendar,官方网站: http://bettercalendar.codeplex.com/

2.Winforms圆角组合框控件:官方网站: http://roundedgroupbox.codeplex.com/

分享几个.NET WinForm开源组件,纪念逐渐远去的WinForm。。。的更多相关文章

  1. Github 开源:升讯威 Winform 开源控件库( Sheng.Winform.Controls)

    Github 地址:https://github.com/iccb1013/Sheng.Winform.Controls 本控件库中的代码大约写于10年前(2007年左右),难免有不成熟与欠考虑之处, ...

  2. Winform 开源控件库( Sheng.Winform.Controls)

    升讯威 .Net WinForm 控件库提供了超过15种 Winform 控件,你可以直接使用本控件库,更可以通过本控件库学到 Winform 控件开发的方法和理念. 你可以学习到: 如何基于 Con ...

  3. 开源组件websocket-sharp中基于webapi的httpserver使用体验

    一.背景 因为需要做金蝶ERP的二次开发,金蝶ERP的开放性真是不错,但是二次开发金蝶一般使用引用BOS.dll的方式,这个dll对newtonsoft.json.dll这个库是强引用,必须要用4.0 ...

  4. Infer.net 开源组件: 1, 机器学习入门,要从贝叶斯说起

    我的入门方式,先从应用现象中,总结规律反推本质.一头扎进理论书籍是不对的. 老外的先进,还是体现在传承方面.没办法,我们竞争压力大,有好东西藏着掖着.大家都苦逼 我最开始是从介绍,有了基本概念,见xx ...

  5. FluentConsole是一个托管在github的C#开源组件

    FluentConsole是一个托管在github的C#开源组件 阅读目录 1.控制台能有啥滑头? 2.FluentConsole基本介绍 3.使用介绍 4.资源 从该系列的第一篇文章 .NET平台开 ...

  6. react-native开源组件react-native-wechat学习

    转载链接:http://www.ncloud.hk/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/react-native-open-source-components-r ...

  7. .net 开源组件推荐 之 StackExchange

    已经两年没更新过博客了!!! StackExchange,地址:https://github.com/StackExchange,开源的这些项目都是在StackOverflow线上使用的. 说起Sta ...

  8. 推荐3个小程序开源组件库——Vant、iView、ColorUI

    推荐3个小程序开源组件库 在进行小程序开发时,经常会遇到编写组件方面的阻碍,这让我们花费大量的时间在页面以及 CSS 样式编写上.因此可以使用开源组件库,有些复杂的组件可以直接拿来使用,节省开发时间, ...

  9. 分享海量 iOS 及 Mac 开源项目和学习资料

    UI 下拉刷新 EGOTableViewPullRefresh - 最早的下拉刷新控件. SVPullToRefresh - 下拉刷新控件. MJRefresh - 仅需一行代码就可以为UITable ...

随机推荐

  1. java的基础知识运算符

    一.运算符. 1.算数运算符:+,-,*,/,% 2.自增自减 :++ ,-- ++在前 先运算在赋值 ++在后 先赋值后运算 -- 减减同上. 3.赋值运算符 : = ,+=,-=,*=,/= 4. ...

  2. yum 只下载不安装

    以下载busybox为例 1.首先确定有yumdownloader 这个软件,这个软件在yum-utils 工具包里面. # rpm -qa |grep yum-utils # yum -y inst ...

  3. angluar去掉url中#

    众所周知,angular项目中路由机制会在地址栏加一个#来实现各个页面的切换,虽然url中有个#号也无伤大雅,但每次看到多一个这个东西总是不舒服(我不是强迫证啊),趁着项目间隙还是决定把它去掉. 去谷 ...

  4. jsp页面 如何通过el表达式获取request属性值

    1. 我在一个超连接后加个参数如:      http://localhost:8080/test/testjstl.jsp?pid=001    此时在jsp页面中,获取jsp传过来的pid的参数值 ...

  5. Github+Jekyll —— 创建个人免费博客(二)Ruby+Jekyll部署

    摘要: 本文中我将介绍一下如何在github上搭建个人Blog(博客),也顺便让我们掌握一下github Pages功能,另外还涉及到Jekyll技术. ======================= ...

  6. JS键盘KEYCODE值参考

    keycode 1 = 鼠标左键keycode 2 = 鼠标右键keycode 3 = Cancelkeycode 4 = 鼠标中键keycode 8 = BackSpace keycode 9 = ...

  7. 通过c程序更改文件的ctime和mtime

    通过c程序更改文件的ctime和mtime与某个文件相同 源文件words.txt [root@bogon ~]# ll words.txt ;ll words.txt -u -rw-r--r-- 1 ...

  8. java并发编程(十七)内存操作总结

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/17377197 主内存与工作内存 Java内存模型的主要目标是定义程序中各个变量的访问规则, ...

  9. TCP三次握手四次挥手

    看到一篇总结很好的TCP三次握手,学习一下,原文链接. 建立TCP需要三次握手才能建立,而断开连接则需要四次握手.整个过程如下图所示: 先来看看如何建立连接的. 首先Client端发送连接请求报文,S ...

  10. SharePoint 2010 Survey的Export to Spreadsheet功能怎么不见了?

    背景信息: 最近用户报了一个问题,说他创建的Survey里将结果导出成Excel文件(Export to spreadsheet)的按钮不见了. 原因排查: 正常情况下,这个功能只存在于SharePo ...