是写代码啊.代码如下
DataSource_xbdm.DataSet.Cancel;
DataSource_xbdm.DataSet.Append;
datasetbzsjj1.Active:=false;
datasetbzsjj1.Database.URL:='Biz:\RLZYGLXT\RLZYGLXTSJK.Database';
DataSetBZSJJ1.SQL.Text := 'select Top '+SysUtils.IntToStr(PageCount)+' * From xbdm where ID not in (select Top '+PageBegin+' ID From xbdm order by zdxdm) order by zdxdm ';
datasetbzsjj1.Active:=true;
楼主,该问题不是缺陷,如果在对DataGrid的数据进行修改数据源的时候,建议先断开,然后再设置上,参考代码如下
begin
DataGrid1.DataSource := nil;
try
page:=page+1;
PageCount:=SysUtils.StrToInt(Edit_PageCount.Text);
PageBegin:=SysUtils.IntToStr((page-1)*PageCount);
//填充datagrid
DataSource_xbdm.DataSet.Cancel;
// DataSource_xbdm.DataSet.Append;
datasetbzsjj1.Active:=false; datasetbzsjj1.Database.URL:='Biz:\RLZYGLXT\RLZYGLXTSJK.Database';
DataSetBZSJJ1.SQL.Text := 'select Top '+SysUtils.IntToStr(PageCount)+' * From xbdm where ID not in (select Top '+PageBegin+' ID From xbdm order by zdxdm) order by zdxdm ';
datasetbzsjj1.Active:=true;
hqzx(SysUtils.IntToStr(page));
finally
DataGrid1.DataSource := DataSource_xbdm;
end;
end;