摘要:
Winform控件分为用户控件和自定义控件,用户控件比较简单,本文讨论的是自定义控件。MS控件,无论是Winform控件还是Webform控件,无论是用户控件还是自定义控件,都有着相同的设计思想。1)对于自定义控件来说:Winform控件的UI显示是靠OnPrint方法,Webform控件的UI显示是靠RenderXXXX方法。2)对于自定义控件和用户控件来说:Winfrom控件和Webform控... 阅读全文
摘要:
多线程,一个古老的话题,今天我来聊下最基本的线程,UI线程和后台线程。在后台线程中直接操作UI控件会出现异常(线程间操作无效:从不是创建控件“XX”的线程访问它)。怎么解决这个问题那?关键点在代理和InvokeRequired属性,Winform的UI(窗口)代码如下:[代码]为了能在后台线程中操作UI线程,我们的MainForm继承了公共接口IFormWorkThread... 阅读全文
摘要:
Window服务比较简单。新建Windows服务就可以编写,代码如下:[代码]此服务用来记录服务启动时间,很简单:)配置Windows服务就有些复杂了。1)在项目中添加新项Installer,并且拖入两个对象(ServiceProcessInstaller对象和ServiceInstaller对象)。2)设置两个拖入的对象:serviceProcessInstaller的Account属性可以设置... 阅读全文
摘要:
如果你从前做过asp,php,jsp就会知道,表单真的很重要。现在的aspx实际上基础还是html,下面就aspx代码和展现在客户端的源代码进行比较说明:aspx代码:[代码]aspx.cs代码[代码]客户端源代码:[代码]首先从UI上分析,Panel实际上被解析成div,TextBox实际上被解释为input(type为text),Button实际被解析为input(type为submit)等等... 阅读全文
摘要:
IHttpModle先于IHttphandler处理,我们还是从web.config看起:<httpModules> <add name="LandpyModule" type="LandpyServerControl.LandpyModule,LandpyServerControl"/> </httpModules>IHttphandler的配置如下:<... 阅读全文
摘要:
同样,先看下我们的web.config文件:<httpHandlers> <add verb="*" path="*.yy" type="Identify.LandpyHttpHander,Identify"/></httpHandlers>首先提个问题大家见过后缀名为“yy”的文件吗,呵呵,这里实际上是使用了一个小技巧。利用IHttph... 阅读全文
摘要:
同样IHttpHandler原理见“IHttphandler子Url重写”一文。web.config设置如下:<httpHandlers> <add verb="*" path="*.gif" type="MyHttpHandler.PreventAntiLeechHandler,MyHttpHandler"/> </httpHandlers&... 阅读全文
摘要:
IHttphandler是什么,表面上看他是一个接口,实际上他可以把客户端提交的请求进行处理后返回给客户端。IHttphandler接口包括IsReusable属性和ProcessRequest方法,IsReusable属性是指是否可以重用,ProcessRequest方法用来处理客户端的请求。群里有人提出了Url重写的需求,闲来无事便帮忙实现了下。那位兄弟的需求如下:输入如下格式http://l... 阅读全文
摘要:
IHttphandler原理已经在“IHttphandler之Url重写”一文中讲述,有不理解的同学可以参看该文章。本文是对网站的图片进行水印处理。原理相同,关键在web.config的配置,以及GDI+操作。首先对web.config配置如下:<httpHandlers> <add verb="*" path="*.jpg" type="MyHttpHa... 阅读全文