需要做判断if (_dg.DataSource == null)
{
SetButtonState(0);
return;
} if (_dg.DataSource.GetType().ToString().ToLower() == "system.data.datatable")
{
newCount = ((DataTable)_dg.DataSource).Rows.Count;
}
else if(_dg.DataSource.GetType().ToString().ToLower() == "system.data.dataview")
{
newCount = ((DataView)_dg.DataSource).Count;
}
else if(_dg.DataSource.GetType().ToString().ToLower() == "system.data.dataset")
{
newCount = ((DataSet)_dg.DataSource).Tables[0].Rows.Count;
} if(newCount > 0)
{
PageCount = (int)((newCount - 1) / _pagesize + 1);
if(_dg.CurrentPageIndex > PageCount - 1)_dg.CurrentPageIndex = PageCount - 1;
}
else
{
PageCount = 0;
_dg.CurrentPageIndex = 0;
}
switch (_dispStyle)
{
case 1:
LabelMsg.Text = "共" + PageCount.ToString() + "页 第" + (_dg.CurrentPageIndex + 1).ToString() + "页";
LabelMsg.Text += " 总记录数:" + newCount.ToString() + "";
break;
case 2:
LabelMsg.Text = (_dg.CurrentPageIndex + 1).ToString() + "/" + PageCount.ToString() + "页";
LabelMsg.Text += " 总数:" + newCount.ToString();
break;
}
{
SetButtonState(0);
return;
} if (_dg.DataSource.GetType().ToString().ToLower() == "system.data.datatable")
{
newCount = ((DataTable)_dg.DataSource).Rows.Count;
}
else if(_dg.DataSource.GetType().ToString().ToLower() == "system.data.dataview")
{
newCount = ((DataView)_dg.DataSource).Count;
}
else if(_dg.DataSource.GetType().ToString().ToLower() == "system.data.dataset")
{
newCount = ((DataSet)_dg.DataSource).Tables[0].Rows.Count;
} if(newCount > 0)
{
PageCount = (int)((newCount - 1) / _pagesize + 1);
if(_dg.CurrentPageIndex > PageCount - 1)_dg.CurrentPageIndex = PageCount - 1;
}
else
{
PageCount = 0;
_dg.CurrentPageIndex = 0;
}
switch (_dispStyle)
{
case 1:
LabelMsg.Text = "共" + PageCount.ToString() + "页 第" + (_dg.CurrentPageIndex + 1).ToString() + "页";
LabelMsg.Text += " 总记录数:" + newCount.ToString() + "";
break;
case 2:
LabelMsg.Text = (_dg.CurrentPageIndex + 1).ToString() + "/" + PageCount.ToString() + "页";
LabelMsg.Text += " 总数:" + newCount.ToString();
break;
}
void DataGrid1_Delete(object src,DataGridCommandEventArgs e){
//这里执行删除操作并重新绑定数据
if(DataGrid1.CurrentPageIndex>=DataGrid1.PageCount)
DataGrid1.CurrentPageIndex-=1;
}
{
if (MyDataGrid.Items.Count==1)
MyDataGrid.CurrentPageIndex-=1;
}
......