首页产品库评测行情新闻|手机数码笔记本台式机DIY硬件数字家庭数码相机办公外设|软件下载游戏开发|社区

更多

数码相机
MP4
LCD
机箱
音箱

天极网 > 软件频道>ASP.NET2.0服务器控件之自定义状态管理

ASP.NET2.0服务器控件之自定义状态管理

2006-07-05 10:35作者:金属边缘出处:天极开发责任编辑:方舟

  自定义控件状态管理

  视图状态件状态在数据管理方面不太相同。ASP.NET 2.0在支持针对简单属性的默认视图状态管理机制的同时,还支持自定义视图状态管理。然而,对于控件状态管理而言,则不存在默认控件状态管理机制。开发人员必须实现自定义控件状态管理过程。本小节介绍一下自定义控件状态管理的实现方法,这对于实现基于控件状态功能的对象有着重要意义。

  实际上,在前面系列文章介绍控件状态的过程中,读者已经接触了控件状态实现的内容,其中就包括自定义控件状态管理的实现。这个过程的实现与基于Control基类的自定义视图状态管理非常相似,二者都需要重写Control基类中的方法。实现自定义控件状态管理需要重写Control基类的SaveControlState和LoadControlState。下面列举了一段简单示例代码。

public class Sample : Control {
 private int currentIndex = 0;
 protected override void OnInit(EventArgs e) {
  Page.RegisterRequiresControlState(this);
  base.OnInit(e);
 }
 protected override object SaveControlState() {
  return currentIndex != 0 ? (object)currentIndex : null;
 }
 protected override void LoadControlState(object state) {
  if (state != null) { currentIndex = (int)state; }
 }
}

  实现自定义控件状态管理分为3个关键步骤:

  (1)调用RegisterRequiresControlState方法。该方法用于将自定义控件注册为具有持久性控件状态的控件。

  (2)重写SaveControlState方法。该方法用于保存自页回发到服务器后发生的任何服务器控件状态更改。

  (3)重写LoadControlState方法。该方法用于从SaveControlState方法保存的上一个页请求还原控件状态信息。

  小结
 
  本章主要介绍了自定义视图状态和控件状态管理的内容。它们对于实现自定义服务器控件有着重要意义。建议读者首先深入理解理论知识,然后再尝试进行开发工作,这样可获得更好的学习效果。

关注此文的读者还看过:

返回软件频道首页

共3页。 上一页123

软件频道最新更新

热点推荐

天极服务|关于我们|About us|网站律师|RSS订阅|友情合作|加入我们|天极动态|网站地图|意见反馈|MSN/QQ上看天极
Copyright (C) 1999-2012 Yesky.com, All Rights Reserved 版权所有 天极网络