ASP.NET Repeater绑定不成功的问题

不成功方式如下,利用DataView筛选DataTable,如下写法发现Repeater绑定不上,
if (ViewState["khjd"] != null) { string khjd = ViewState["khjd"].ToString(); dv.RowFilter = "Customer_Source = '" + khjd + "'"; DataTable dts = dv.ToTable(); //var linqs = linq.Where(i => FindKHJD(i.Customer_Source) == khjd); this.AspNetPager1.RecordCount = dts.Rows.Count; this.Repeater2.DataSource = GetPagedTable(dts, this.AspNetPager1.CurrentPageIndex, Convert.ToInt32(this.ddlPageSize.SelectedValue)); } else { this.AspNetPager1.RecordCount = dt.Rows.Count; this.Repeater2.DataSource = GetPagedTable(dt, this.AspNetPager1.CurrentPageIndex, Convert.ToInt32(this.ddlPageSize.SelectedValue)); } this.AspNetPager1.PageSize = Convert.ToInt32(this.ddlPageSize.SelectedValue); this.Repeater2.DataBind();
把代码更改成
  this.AspNetPager1.RecordCount = dt.Rows.Count;
            this.Repeater2.DataSource = GetPagedTable(dt, this.AspNetPager1.CurrentPageIndex, Convert.ToInt32(this.ddlPageSize.SelectedValue));
            if (ViewState["khjd"] != null)
            {
                string khjd = ViewState["khjd"].ToString();
                dv.RowFilter = "Customer_Source = '" + khjd + "'";
                DataTable dts = dv.ToTable();
                //var linqs = linq.Where(i => FindKHJD(i.Customer_Source) == khjd);
                this.AspNetPager1.RecordCount = dts.Rows.Count;
                this.Repeater2.DataSource = GetPagedTable(dts, this.AspNetPager1.CurrentPageIndex, Convert.ToInt32(this.ddlPageSize.SelectedValue));
            } 
            this.AspNetPager1.PageSize = Convert.ToInt32(this.ddlPageSize.SelectedValue);
            this.Repeater2.DataBind();

  这样就能绑定上了,如果有大神可以解释一下感激不尽阿。

  

posted @ 2014-05-14 15:49  残香  阅读(191)  评论(0)    收藏  举报