ASP.NET控件开发基础(18)
http://tech.ddvip.com 2007年09月02日 社区交流
内容摘要:本篇继续上篇的讨论,可能大家已经在使用asp.net2.0了,DataSource属性不再使用,而是跟数据源控件搭配使用.现在讨论的绑定技术都是基于1.1版本,先熟悉一下,本质上是一样的,这样一步步的学习.对以后绝对有帮助.因为当你使用数据源控件,只需要设置一个DataSourceID,方便的同时你是否知道数据源控件帮你做了什么事情,如果你想觉的够用了,可以不用了解,但我相信你一定会有需求.
这个辅助类判断太多,刚看会看晕掉的,所以在if判断这里把代码折叠起来,有助于理解
这里有几个类可能没见过,我们把关键用到的类一一列出来,希望大家查查MSDN
1.IListSource 向对象提供返回可以绑定到数据源列表的功能
2.ITypedList 提供发现可绑定列表架构的功能,其中可用于绑定的属性不同于要绑定到的对象的公共属性
3.PropertyDescriptor 提供类上的属性的抽象化
4.PropertyDescriptorCollection 表示 PropertyDescriptor 对象的集合
下面开始
(1).首先如果传入的数据源类型是IEnumerable的话,很好,可以直接返回
if (dataSource is IEnumerable)
{
return (IEnumerable)dataSource;
}
(2).转化实现IListSource接口的类
虽然传入的类型非IEnumerable,如DataSet类实现了IListSource接口,其目的就是使用此接口的GetList方法返回一个IList(IList继承IEnumerable,可以进行数据绑定),大家可以参考MSDN的原话
IList list = null;
IListSource listSource = (IListSource)dataSource;
list = listSource.GetList();
假设传入的是DataSet,list将会得到System.Data.DataViewManager集合
DataViewManager是什么呢?为默认DataTable默认的DataViewSettingCollection
DataViewSettingCollection是什么呢?表示DataTable的DataViewSetting的集合
DataViewSetting是什么呢?表示从 DataViewManager 创建的 DataView 的 的默认设置
上面的我们不熟,DataView大家应该熟悉,其可以对数据进行排序,过滤等
责编:豆豆技术应用
- asp.net 视频教程
- asp.net 数据库编程
- asp.net 入门教程
- ado.net 教程
- asp.net 基础讲座
- asp.net ajax 教程
- asp.net ajax 入门系列
- asp.net 控件开发基础
- asp.net 2.0 服务器控件
- asp.net 2.0 教程
- asp.net 控件开发
- asp.net 类
- asp.net 分页
- asp.net 页面缓存
- asp.net 常见问题解决
- asp.net 2.0 母版页
- asp.net SQL Server
- asp.net 错误
- asp.net 事件
- asp.net 组件
- asp.net 性能
- asp.net 文件上传
- 更多asp.net专题……