2007年6月7日

ASP.NET组件设计Step by Step(7)

摘要: 复杂属性和状态管理 复杂属性声明/持久: 所谓复杂属性,即通常不可用CLR的基本数据类型表达的属性。譬如,FontInfo,即代表字体属性,包含Bold 、Name、Size、Color等信息(通常称为子属性)。 对于复杂属性,控件在声明时候,通常采用 属性—子属性 的连字符表示复杂属性的一个子属性。 其中的划线部分即代表了Font属性。 复杂属性的另外一种表达是,将复杂属性嵌套放于控件声明... 阅读全文

posted @ 2007-06-07 16:18 jasonCao 阅读(211) 评论(0) 推荐(0)

ASP.NET组件设计Step by Step(6)

摘要: asp.net页面如果是通过post请求到服务器,框架将会遵行事件周期生成、调用控件,而控件(如果支持回传)则将加载回传数据,并且映射成控件的服务器端事件,就好像在重放客户的客户行为(客户按下一个按钮,却引发服务器端控件的click事件)。其中的机制如何? 如果一个控件需要处理回传事件,那么必须实现一个特定接口 IPostBackEventHandler接口: public interfa... 阅读全文

posted @ 2007-06-07 16:18 jasonCao 阅读(199) 评论(0) 推荐(0)

ASP.NET组件设计Step by Step(5)

摘要: 控件生存周期 当一个asp.net页面被请求后,一个page实例被生成,开始自己的逻辑,最终返回HTML流给用户端。构成逻辑处理的是page中存在的服务器端控件以及控件间的交互,并且在页面结束前服务器控件们被销毁(视.net的回收策略而定)。那么这些控件在短短的页面处理过程中经历了创建、处理、销毁等到底是如何组织的?这些控件是如何同其他控件交互,如何在多个页面间保持状态的?(这应当是整个控件开... 阅读全文

posted @ 2007-06-07 16:17 jasonCao 阅读(193) 评论(0) 推荐(0)

ASP.NET组件设计Step by Step(4)

摘要: 如果我们的服务器控件需要较完备的GUI,譬如需要控制HTML元素的附加属性字体、颜色、高度等,那么应当从Control的子类WebControl继承,以得到所需的基础性能。从WebControl类派生,需要遵守通常如下的约定: 1、 包含从System.Web.UI.WebControl的命名空间的引用 2、 不能够重载Render方法直接向输出流提供数据,而应当重载RenderContents方... 阅读全文

posted @ 2007-06-07 16:16 jasonCao 阅读(210) 评论(0) 推荐(0)

ASP.NET组件设计Step by Step(3)

摘要: 自定义控件(custom control)入门 在服务器端中执行程序逻辑的组件,是asp.net 应用程序的基本构造块。为了能够在asp.net环境执行,必须满足一定条件。 为了能够参与到网页框架执行,需要满足IComponent, IDisposable, IParserAccessor, IdataBindingsAccessor等接口。所以框架提供System.Web.C... 阅读全文

posted @ 2007-06-07 16:16 jasonCao 阅读(295) 评论(0) 推荐(0)

ASP.NET组件设计Step by Step(2)

摘要: 从继承关系上看,Asp.net 服务器控件的类别大致上分为4类: 1、 用户控件 类似page,基本上不需要编程,可以将某个aspx页面作为复用组件使用。 2、 LiteralControl ASP.NET 将所有不需要服务器端处理的 HTML 元素和可读文本编译为该类的实例。例如,开始标记中不包含 runat="server" 属性/值对的 HTML 元素被编译为 LiteralContro... 阅读全文

posted @ 2007-06-07 16:15 jasonCao 阅读(272) 评论(0) 推荐(0)

ASP.NET组件设计Step by Step(1)

摘要: 2004.8.1 学习创建工程库、在自己的项目中应用 1、 启动VS200X 2、 选择新建解决方案 3、 选择缺省的方案类型,选择 Web控件库。Web控件库不需要web站点,基本上是一个DLL类型库 4、 输入自己的类型库的名称,譬如ASPCTLLib之类的。这个决定了namespace和以后其他工程使用此库的引用库名。 5、 系统自动产生的代码如下: using System; using ... 阅读全文

posted @ 2007-06-07 16:14 jasonCao 阅读(260) 评论(0) 推荐(0)

2007年6月4日

自定义配置节处理实现个性化web.config

摘要: 通过System.Configuration中的ConfigurationSettings类的AppSettings属性,可以很方便访问web.config配置文件中appSettings节点的数据。对于web程序利用这个配置文件存放一些只读的程序信息,比如程序名称,作者信息,数据库连接字符串等将是十分方便有用。如: private void Page_Load(object sender, S... 阅读全文

posted @ 2007-06-04 16:51 jasonCao 阅读(239) 评论(0) 推荐(0)

在C#程序里面完成插件架构

摘要: 在.NET框架下的C#语言,和其他.NET语言一样提供了很多强大的特性和机制.其中一些是全新的,而有些则是从以前的语言和平台上照搬过来的。然而,这种巧妙的结合产生了一些有趣的方法可以用来解决我们的问题。这篇文章将讲述如何利用这些奇妙的特性,用插件(plug-ins)机制建立可扩展的解决方案。后面也将提供一个简要的例子,你甚至可以用这个东西来替换那些已经在很多系统中广泛使用的独立的程序。在一个系统... 阅读全文

posted @ 2007-06-04 16:23 jasonCao 阅读(327) 评论(0) 推荐(0)

C#插件构架实战(Jack H Hansen)

摘要: 一、引言 1. 问题的引入 假设你设计的程序已经部署到用户的计算机上,并且能够正常运行了。但是有一天,用户打来了电话——他们要求增加新的功能。确定了用户的需求后,你竟然发现原有的软件架构已经无法胜任新增任务的需求——你需要重新设... 阅读全文

posted @ 2007-06-04 16:20 jasonCao 阅读(389) 评论(0) 推荐(0)

导航