Pivot Grid-10 自定义PivotGrid

经过前段时间的专研,对 Pivot Grid 控件有了一定的了解。为了提供工作效率,方便后期维护,决定编写自定义类,实现数据库连接、执行SQL语句,并绑定 Pivot Grid 控件等功能。思路如下:

  1. 能够连接指定的SQL Server 数据库。(工作需要,目前只考虑连接SQL Server数据库)
  2. 可以执行指定的SQL语句,并将结果分配给 Pivot Grid 控件。
  3. 步骤如下:
    1. 创建数据源,使用 MsSqlConnectionParameters。
    2. 创建SQL语句,使用 CustomSqlQuery。
    3. 执行SQL语句,使用 SqlDataSource.Fill() 方法。
    4. 绑定 Pivot Grid 控件,通过PivotGridControl.DataSource 属性和 PivotGridControl.DataMember 属性。
  4. 示例代码:
namespace MyPivot
{
    /// <summary>
    /// 我的PivotGrid类
    /// </summary>
    class MyPivotGrid
    {
        private string _serverName;
        private string _databaseName;
        private string _userName;
        private string _password;
        private string _dataMember;
        private string _sqlSelectQuery;

        private SqlDataSource _sqlDataSource;
        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="serverName">服务器名称或地址</param>
        /// <param name="databaseName">数据库名称</param>
        /// <param name="userName">用户名</param>
        /// <param name="password">密码</param>
        public MyPivotGrid(string serverName, string databaseName, string userName, string password)
        {
            _serverName = serverName;
            _databaseName = databaseName;
            _userName = userName;
            _password = password;

            _dataMember = "@";
        }
        /// <summary>
        /// 填充数据
        /// </summary>
        public void Fill()
        {
            MsSqlConnectionParameters sqlParams = new MsSqlConnectionParameters(_serverName,
                                                                                _databaseName,
                                                                                _userName,
                                                                                _password,
                                                                                MsSqlAuthorizationType.SqlServer);

            CustomSqlQuery query = new CustomSqlQuery(_dataMember, _sqlSelectQuery);
            _sqlDataSource = new SqlDataSource(sqlParams);
            _sqlDataSource.Queries.Add(query);
            _sqlDataSource.Fill();
        }

        /// <summary>
        /// 填充数据
        /// </summary>
        /// <param name="sqlSelectQuery">填充数据时执行的sql语句</param>
        public void Fill(string sqlSelectQuery)
        {
            _sqlSelectQuery = sqlSelectQuery;
            Fill();
        }
        /// <summary>
        /// 绑定PivotGrid控件
        /// </summary>
        /// <param name="pivotGridControl">要绑定的PivotGrid控件</param>
        public void Bind(PivotGridControl pivotGridControl)
        {
            pivotGridControl.DataSource = _sqlDataSource;
            pivotGridControl.DataMember = _dataMember;
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值