[置顶] C#基础系列:开发自己的窗体设计器(实现控件的选择)

所谓控件的选择,就是在设计器上某个控件被选中或者控件获得焦点(通过Tab调整控件焦点)的时候,在控件的四周显示出调整手柄。如下图: 如上,通过控件的调整手柄,我们可以调整控件的宽度和高度。而实现这个调整手柄的关键点其实得益于vs2005控件的灵活性。因为这8个正方形的调整手柄其实就是8个控件。 所以我们本文的重点如下:1、开发自定义的调整手柄控件,也就是这正方形控件;...
阅读(10443) 评论(15)

[置顶] C#基础系列:实现自己的ORM(ORM的基础概念)

ORM(O/R Mappping对象关系映射)的基础概念 在我们的系统中,存在大量的需要进行持久化存储的对象,这些对象可能是各种各样的业务单据,也可能是我们的系统配置信息等。另外一些属于内存中使用而不需要进行持久化存储的对象,不属于我们的讨论范围。而在支持对象序列化的语言比如C#,Java中,我们可以将这些对象序列化到磁盘文件或者直接保存到关系数据库中。其中关系数据库是我们最主要也是最安全...
阅读(12856) 评论(9)

[置顶] 解析Html生成标签树(一)

解析Html成标签树结构以后,我们不但可以很容易取得想要的元素,同时也很容易将Html转换成对应的XML文件。但是由于代码是在公司写的,所以没有粘贴出来的可能性,所以我只能给出大概的代码流程,具体细节描述,相信各位都很容易写出来,并且写的比我好,关键的是算法实现思想。算法的关键如下: 1.         Html中每个tag都是都将作为树中的一个节点存在的,每个tag都属于树中的某一层。...
阅读(20536) 评论(57)

C#基础系列:开发自己的窗体设计器(PropertyGrid显示中文属性名)

  既然是一个窗体设计器,那就应该能够设置控件的属性,设置属性最好的当然是PropertyGrid了,我们仅仅需要使用一个PropertyGrid.SelectedObject = Control就可以搞定,让PropertyGrid显示Control的所有属性。可是这里显示的属性名是英文的。对于我们开发人员来说这无可厚非,我们也乐于接受。并且让PropertyGrid显示中文属性名,这对于我...
阅读(14479) 评论(17)

C#基础系列:开发自己的窗体设计器(实现控件的拖动)

 控件移动的关键点就是需要设计一个独立于任何控件的类(UIMoveKnob)来控制控件的移动。我这里实现的方法只针对一个控件,如果需要同时选择多个控件,然后同时移动的话,你需要修改这个类,这里是有点难于控制,我使用的方法严重耦合,所以只在这里给出移动一个控件的办法,具体移动过个控件的方法请各位讨论。 要移动某个选定的控件,我们需要实现控件的:MouseDownMouseMove...
阅读(11690) 评论(11)

C#基础系列:开发自己的窗体设计器(在容器上拖动鼠标增加控件)

  本文我们实现一个简单的通过拖动鼠标来增加控件的方法。在我们使用vs2005来开发WinForm应用程序的时候,我们通过选择左边“工具箱”中的某个控件,然后在我们自己的窗体上通过拖动鼠标,一个我们需要的控件就出现了,觉得很爽!其实vs2005中已经有这方面的组件,我们通过简单的代码就可以直接使用,这个你可以用“窗体设计器”Google一下,已经有人做了这方面的介绍。所以我要说的是,难...
阅读(10891) 评论(10)

C#基础系列:开发自己的窗体设计器(总纲)

我所处的行业,所使用的业务系统都不大,但是个性需求极其多,每个地区,每家公司都可能存在很大的差别。所以我就想能够弄一个类似于vs2005的WinForm窗体设计器的开发平台,让用户拖拖拽拽就可以添加自己需要的控件,或者删除不需要的控件,从而完成大部分的工作,实现功能的扩展,而我需要做的,只不过是写写插件代码。 这种类型的系统目前已经有很多,但是那些都是属于别人的,即使我能够免费下载到一个,...
阅读(11317) 评论(25)

社区网站SNS化的思考 – SNS之我见(三)

 社区网站SNS化的思考 – SNS之我见(三)关键字: sns, community 一、 SNS工具还是社区网站? Facebook的创始人马克扎克博格在多次接受采访的时候都强调过:Facebook是一个社交工具,在前面两篇文章我也阐示了这一点。因此SNS网站在我看来分为两大类: 1、Facebook类的SNS,他只是一个社交工具,他不是社区,没有UGC,没有社区文化。Face...
阅读(2649) 评论(0)

点评国内Facebook克隆网站 - SNS之我见(二)

 点评国内Facebook克隆网站 - SNS之我见(二)关键字: sns, clone 点评国内SNS网站 1、小富即安、目光短浅的校内网 在校内开放API之前,我看错了两件事情:一个是低估了国内web2.0小网站开发app的热情;一个是高估了国内SNS网站商业眼光。 校内网在国内能够成功,我觉得机遇是主要的原因:王兴搞校内网的时候,国家教委开始管制各大高校的BBS,在校学生们无处可...
阅读(2803) 评论(0)

Facebook的成功秘诀是什么 - SNS之我见(一)

Facebook的成功秘诀是什么 - SNS之我见(一)关键字: sns, facebook SNS是2008年中国互联网最火爆的现象了,无数的SNS网站一夜之间纷纷涌现,前仆后继,慰为壮观:校内、海内、开心、一起、蚂蚁以及无数的Facebook克隆SNS网站陷入了一场空前惨烈的厮杀当中,每个人都生怕错过互联网下一个the big thing的机会,一波接一波的抄袭、炒做和竞争...
阅读(3504) 评论(5)

Google Chrome真的会成为主宰吗

自从Google推出免费开源的浏览器GoogleChrome以后,在各个与IT相关的网站上都能够看到关于Google Chrome的评论,很多是说它将如何如何对IE以及FireFox形成威胁的评论。可是我总觉得某些话不吐不快,真的能造成对这两款浏览器的绝对威胁吗?我的观点是NO。下面我就我的观点以IE为主作点点看法。首先,Google Chrome的几大亮点是:免费,开源,界面简洁,速度快,据...
阅读(3740) 评论(18)

C#基础系列:实现自己的ORM(MiniORM的测试代码)

看到有同学反馈,说MiniORM代码有Bug,也不知道怎么用,所以今天我就写了些测试代码。希望能够给点帮助。同时也发现了两Bug,一并罗列出:1、MiniORM.PubFuncs.GetObjectType()函数:public static Type GetObjectType(string assemblyname, string namespacename, string cla...
阅读(7594) 评论(15)

C#基础系列:实现自己的ORM(构造我自己的ORM)

构造我自己的ORM通过前面两章的描述,我相信很多朋友都已经明白我了下面将要讨论到的ORM的实现方法了,那就是根据自定义Attribute来定义O/R Mapping规则,然后通过反射来动态获取此规则,动态构造SQL语句。由于这个小东西(ORM)出生在深圳,所以我想来想去,她应该有个深圳的名字,所以我就叫她“MiniORM”。不知道各位认为如何?MiniORM采用的是ONE_INHERIT_TR...
阅读(10353) 评论(47)

C#基础系列:实现自己的ORM(反射以及Attribute在ORM中的应用)

反射以及Attribute在ORM中的应用 一、 反射什么是反射?简单点吧,反射就是在运行时动态获取对象信息的方法,比如运行时知道对象有哪些属性,方法,委托等等等等。反射有什么用呢?反射不但让你在运行是获取对象的信息,还提供运行时动态调用对象方法以及动态设置、获取属性等的能力。反射在ORM中有什么用呢?我这里所讨论的ORM实现是通过自定义Attribute的方式进行映射规则的描述的。但是我...
阅读(18292) 评论(16)

在C#应用中,设计自己的配置文件

 在系统开发的过程中,我们总是需要使用配置文件来保存一些我们需要保存的系统参数,毕竟这是.Net时代,如果再使用注册表那就显得复杂了,毕竟操作注册表的API并不是哪么容易理解的。所以在.net应用程序中,都默认出现一个App.Config(对于 Web应用程序是Web.Config)我们可以将系统运行所需要的参数采用加密或者明文的方式保存在这个文件中。但是当我们需要大量的,并且有一定逻辑结构的...
阅读(7233) 评论(12)

GZipStream实现压缩以及出现的问题

在抓取页面的过程中,在存储抓取到的页面内容的时候我需要先将页面压缩再存储,为了使用上的方便,采用了2.0下的GZipStream来进行压缩。引用如下:using System.IO;using System.IO.Compression;......public static byte[] Compress(byte[] data){    Memory...
阅读(7652) 评论(7)

DataGridView导出到Excel

  这几天做一个Winform的系统,需要用到将DataGridView导出成Excel,以前一直没有在意这些方面的问题,因为以前做VB的时候已经做过很多这方面的导出,所以总认为小菜一碟。我用的是VS2005和Office2003。可是真正使用的时候才发现问题多多:首先是添加了Microsoft Excel11 Object Libray之后,发现引用里面的” Microsoft.Of...
阅读(5816) 评论(9)

记录KMP算法,记录其经典之处。。。

离开学校已经多年了,早已经不再抚弄那些陈旧的书籍。周末,深圳的天气阴沉,老天这段时间总是很乐意显摆,动不动就给深圳人民来次几十年一遇的暴雨,似乎要把一年的雨水全部在这些天下完似的。所以呆在家里面看电视,上网,实在也无聊。随手翻开大学时候的(数据结构,还留着啊,当初刚出来的时候总没有底气,总希望能够随时充电用)。看到了字符串的模式匹配一章。突然发现KMP算法是如此的经典。故记之。。。 ...
阅读(2541) 评论(2)

Javascript中的面向对象编程实例

一直以来,我都主要是做winform方面的编程,最近做了点web方面的,所以也研究了几天的javascript。偶有心得故记之:应用面向对象的思想在javascript中同样适用,关键的是你敢不敢用,想不想用。我曾使用vs2005编写了一个vs2003工具箱完全类似的导航工具条,我比较喜欢在winform中通过这种方式向用户提供应用程序功能的导航。所以我也想在web中也使用这种方式。网络上...
阅读(3133) 评论(8)

解析Html生成标签树(二)

前面两篇讲解了解析Html的思想个核心算法,感谢各位提出了意见。先专门列出一文作为解释:1、ViewStates提到,“”怎么办?这个是可以解析出来的,其中解析后节点名为“td”,而“ 阿道夫骄傲了沙发如图:上面的图中,包含了上面提到的例子。 回复ml_dark 兄象这种..你看看你的解析结果....解析结果如上图。...
阅读(4878) 评论(11)
22条 共2页1 2 下一页 尾页
    个人资料
    • 访问:184931次
    • 积分:2253
    • 等级:
    • 排名:第16765名
    • 原创:19篇
    • 转载:3篇
    • 译文:0篇
    • 评论:309条
    文章分类
    最新评论