可以绑定Datagrid,DataList,DropDownList,RadioList,,,等控件。很想把DataGrid的很多操作都封装了,免得每次copy代码那么累
using System;
using System.Data ;
using System.Data.SqlClient ;
using System.Web.SessionState;

namespace LiJiangRiverWeb
{
 /// <summary>
 /// BindListControl 绑定ListControl类控件。
 /// </summary>
 public class BindListControl
 {
  private  SqlConnection SqlConn=new SqlConnection("Data Source=localhost;User Id=sa;Password=sa;Initial Catalog=DB_LiJiangRiver;");
  /// <summary>
  /// 链接字符串
  /// </summary>
  private string m_tableName;
  /// <param name="MyCheckBox"></param>
  /// <param name="MyCheckBoxName"></param>
  private System.Web.UI.WebControls.ListControl m_ListControl;
  /// <summary>
  /// 绑定ListControl名称
  /// </summary>
  /// <param name="myListControl"></param>
  /// <param name="TableName"></param>\
  private string m_sqlQuery;
  /// <summary>
  /// 查询语句
  /// </summary>
  /// <param name="myListControl"></param>
  /// <param name="TableName"></param>
  private System.Web.UI.WebControls.BaseDataList m_DataList;
  /// <summary>
  /// DataGrid
  /// </summary>
  /// <param name="myListControl"></param>
  /// <param name="TableName"></param>
  /// <param name="sqlQuery"></param>
  public BindListControl(System.Web.UI.WebControls.ListControl myListControl,string TableName,string sqlQuery)
  {
   this.m_ListControl = myListControl;
   this.m_tableName = TableName;
   this.m_sqlQuery =sqlQuery;
   Bind_ListControl();

}
  public BindListControl(System.Web.UI.WebControls.ListControl myListControl,string TableName)
  {
   this.m_ListControl = myListControl;
   this.m_tableName = TableName;
   Bind_ListControl();
  }
  //public BindListControl()
  public BindListControl(System.Web.UI.WebControls.BaseDataList  myDataList,string sqlQuery,string TableName)
  {
   this.m_DataList = myDataList;
   this.m_sqlQuery = sqlQuery;
   this.m_tableName=TableName;
   Bind_DataList();
  }

private void Bind_ListControl()//绑定ListControl函数
  {
   //
   // TODO: 在此处添加构造函数逻辑
   //
   // SqlConnection SqlConn=new SqlConnection("Data Source=localhost;User Id=sa;Password=sa;Initial Catalog=DB_LiJiangRiver;");
   DataSet ds = new DataSet();

if (m_sqlQuery == null)
    m_sqlQuery = "Select * from "+ m_tableName;
   SqlConn.Open();
   SqlDataAdapter sqldpt = new SqlDataAdapter (m_sqlQuery,SqlConn);
   sqldpt.Fill (ds,m_tableName);
   m_ListControl.DataSource = ds.Tables [m_tableName].DefaultView ;
   m_ListControl.DataValueField =ds.Tables[m_tableName].Columns[0].Caption ;
   m_ListControl.DataTextField =ds.Tables [m_tableName].Columns[1].Caption ;
   m_ListControl.DataBind();
   SqlConn.Close ();

}
  private void Bind_DataList()//绑定dataList函数
  {
   //SqlConnection SqlConn=new SqlConnection("Data Source=localhost;User Id=sa;Password=sa;Initial Catalog=DB_LiJiangRiver;");
   DataSet ds = new DataSet();
   SqlConn.Open();
   SqlDataAdapter sqldpt = new SqlDataAdapter (m_sqlQuery,SqlConn);
   sqldpt.Fill (ds,m_tableName);
            m_DataList.DataSource = ds.Tables [m_tableName].DefaultView ;
   m_DataList.DataBind();
   SqlConn.Close();
  }
 }
}

转载于:https://www.cnblogs.com/playboy2005/archive/2004/06/03/13098.html

封装绑定以BaseDataList , ListControl 为基类的函数库相关推荐

  1. 2021-03-10 模板扩展类调用模板基类成员函数

    侯捷书内 : 扩展模板类 内通过  this->  指模板基类的成员函数,或通过   基类名::  的方式调用 基类成员函数 侯捷书内说: 扩展模板类,找不到模板基类的成员函数 但是在vs201 ...

  2. 基类成员函数和派生类成员函数不构成重载

    基类成员和派生类成员的名字一样时会造成遮蔽,这句话对于成员变量很好理解,对于成员函数要引起注意,不管函数的参数如何,只要名字一样就会造成遮蔽.换句话说,基类成员函数和派生类成员函数不会构成重载,如果派 ...

  3. c++ 虚函数多态、纯虚函数、虚函数表指针、虚基类表指针详解

    文章目录 静态多态.动态多态 虚函数 哪些函数类型不可以被定义成虚函数? 虚函数的访问方式 析构函数中的虚函数 虚函数表指针 vptr 多继承下的虚函数表 虚基类表指针 bptr 纯虚函数 抽象类 虚 ...

  4. EsayUI + MVC + ADO.NET(仓储基类)

      该篇主要讲解工作单元的运用 和DbHlper抽象封装 工作单元仓储基类:BaseRepository (DbHlper抽象封装)  仓储接口(CRUD):IRepository (CRUD接口) ...

  5. 在保护继承中基类的共有成员_c++中的继承

    类的继承,是新的类从已有类那里得到已有的特性.从另一个角度来看这个问题,从已有类产生新类的过程就是类的派生. 派生类的定义 class 派生类名:继承方式 基类名1,继承方式 基类名2 {派生类成员声 ...

  6. 读书笔记_Effective_C++_条款七:为多态基类声明virtual析构函数

    严格来说,多态分为编译时多态和运行时多态,编译时多态是函数的重载,而运行时多态则是迟绑定技术,即根据基类指针或引用的实际指向来决定采取何种行动,一般来说,多态特指运行时多态.下面我们来举有关C++多态 ...

  7. 基类与派生类中同名成员的关系

    派生类中有与基类同名的成员,则优先使用派生类成员,要使用基类成员则要用classname::var(同名隐藏) 从不同基类中继承了同名成员,但派生类没有同名成员,使用则用域名限制 ◇型继承,派生类中有 ...

  8. V.CodeGenerator WPF代码生成器--Model基类

    V.CodeGenerator WPF代码生成器--Model基类 前言 一.引用Vampirewal.Core基础库 二.使用 NotifyBase(1.X和2.X通用) 版本1.X----适用于E ...

  9. 在派生类中引发基类事件

    1.  在创建基类时,若涉及到事件,事件是特殊类型的委托,只可以从声明它们的类中调用,派生类无法直接调用基类中声明的事件,但是在多数情况,会需要允许派生类调用基类事件,这时,可以再包含该事件的基类中创 ...

最新文章

  1. shell特殊符号cut命令,sort_wc_uniq命令,tee_tr_split命令
  2. java基础(十) 深入理解数组类型
  3. JavaScript内存泄漏知多少?
  4. 《鸟哥的linux私房菜-服务器篇 第三版》 RHCA亲授
  5. CAP理论与MongoDB一致性、可用性的一些思考
  6. 前端学习(1525):简化模板代码
  7. 35岁北大博士拟升市长
  8. ug冲模标准件库_昆山兴模lt;携手gt;武汉益模,打通冲模“智能设计+精益管理”的最后一道关卡...
  9. [Z]四种浏览器对 clientHeight、offsetHeight、scrollHeight、clientWidth、offsetWidth 和 scrollWidth 的解释...
  10. NUC1214 回文素数
  11. REMOTE HOST IDENTIFICATION HAS CHANGED!
  12. Python程序-打印单词的菱形字符图案
  13. c++ gdal 矢量转栅格_QGIS中的矢量图形绘制机制
  14. 2021世界人工智能大会(WAIC2021):深思考人工智能获颁工信部人工智能产业创新“揭榜优胜单位”!
  15. 美国电话号码格式化的Objective-C代码
  16. XMind8思维导图 破解版
  17. 抠像互动技术使人物与各种景物叠加,形成神奇的艺术效果
  18. 测试大会能给我们带来什么?
  19. matlab程序 直线插补,无聊写matlab仿真直线插补算法
  20. python turtle 海龟绘图,绘制小猪佩奇

热门文章

  1. C++多线程快速入门(二)共享数据同步以及数据竞争
  2. erp开发模式_ERP的完整形式是什么?
  3. 操作系统中的多级队列调度
  4. ajax为什么有时候不行,为什么不能用ajax调用
  5. linux文件存储、inode、硬链接、软链接
  6. I/O复用之 EPOLLONESHOT 事件
  7. 231. 2的幂 golang
  8. 框架controller找不到_SpingBoot框架知识详解
  9. 计算机网络【六】网络层协议
  10. C++四种强制类型转换