ASP.NET控件开发基础(21)
http://tech.ddvip.com 2007年09月02日 社区交流
内容摘要:既然2.0版本已经提供了数据源控件,你是否有想法,让你原有的控件也升级到同时支持通过设置DataSource属性和数据源控件来获取数据源,这样以后我们就可以省省工作了。这次我们就来讨论这个话题,让旧版本的数据绑定控件支持数据源控件。
// 从容器中获取DataControl
private Control FindControl(Control control, string controlID)
{
Control namingContainer = control;
Control dataControl = null;
if (control != control.Page)
{
while ((dataControl == null) && (namingContainer != control.Page))
{
namingContainer = namingContainer.NamingContainer;
if (namingContainer == null)
{
throw new HttpException("DataBoundControlHelper_NoNamingContainer");
}
dataControl = namingContainer.FindControl(controlID);
}
return dataControl;
}
return control.FindControl(controlID);
}
/// <summary>
/// 检索与数据绑定控件关联的 IDataSource 接口
/// </summary>
/// <returns></returns>
protected virtual IDataSource GetDataSource()
{
if (this.currentDataSource != null)
{
return currentDataSource;
}
//获取数据源控件
IDataSource source = null;
string controlID = DataSourceID;
if (controlID.Length != 0)
{
Control control = FindControl(this, controlID);
source = control as IDataSource;
}
return source;
}
责编:豆豆技术应用
- 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专题……