Esempio n. 1
0
        /// <summary>
        /// 绑定数据到DataGrid控件MyDataGrid上
        /// </summary>
        private void BindDataGrid()
        {
            //创建操作员记录数据表类实例
            MemCardLevel clsLevel = new MemCardLevel();
            //获取记录数据
            DataTable dt = clsLevel.Bind();
            DataView  dv = new DataView();

            dt.TableName = "Level";
            if (dt != null)
            {
                dv.Table = dt;
                dv.Sort  = " LevelId DESC";

                if (ViewState["Condition"] != null && ViewState["Condition"].ToString() != "")
                {
                    dv.RowFilter = ViewState["Condition"].ToString();
                }
                else
                {
                    dv = dt.DefaultView;
                }

                //新增ID自增值列绑定
                dt.Columns.Add(new DataColumn("idno", Type.GetType("System.Int32")));
                int intCountRecNum = dv.Count;  //获取数据表记录数
                for (int i = 0; i < intCountRecNum; i++)
                {
                    dv[i]["idno"] = i + 1;
                }
                MyDataGrid.DataSource = dv;
                int PageCount = 0;
                if (intCountRecNum % MyDataGrid.PageSize == 0)
                {
                    PageCount = intCountRecNum / MyDataGrid.PageSize;
                }
                else
                {
                    PageCount = intCountRecNum / MyDataGrid.PageSize + 1;
                }

                if (PageCount != 0 && MyDataGrid.CurrentPageIndex >= PageCount)
                {
                    MyDataGrid.CurrentPageIndex = PageCount - 1;
                }

                MyDataGrid.DataBind();
                lblRecNum.Text = intCountRecNum.ToString();     //显示总记录数
                ShowStats();                                    //显示页数信息
            }
        }