MyAadpter.Fill(ds_t,"dt");...DataRow dr=ds.Tables["plan_criterion"].NewRow();这里应该
DataRow dr=ds.Tables["dt"].NewRow();
DataRow dr=ds.Tables["dt"].NewRow();
解决方案 »
- C# .net Repeater里的控件后台调用
- 不能发贴
- 关于多个线程调用同一个类的实例里面的静态变量的问题
- 大家早上好!!问一下,ds.Tables[0].Columns[12] = a; 代码这样子写可以吗?
- 如何获取HTML页面的JS函数的值?然后返回?
- socket编程中如何实现多客户端和广播?
- 忍痛散高分:)关于语法高亮显示的问题
- 怎样使GetPrivateProfileString抛出文件路径错的异常?
- update select delete insert根据build命令自动生成SQL命令
- c# 通信协议解析
- 请教一个设计模式中singleton(单件)的问题
- panel控件上面的信息,如视频输出,当停止视频输出时总是有最后一帧保留在控件上,如何清除?
这样简单
private DataSet dsCustomers;
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
Session.Remove("dsCustomers");
BindData();
}
}
private DataSet CreateDataSet()
{
estate.Components.CustomerDB customer = new estate.Components.CustomerDB();
DataSet ds = new DataSet();
ds = customer.GetCustomers(); DataTable dt = ds.Tables["Customers"];
dt.Columns.Add("RowID",Type.GetType("System.Int32"));
dt.AcceptChanges(); return ds;
} private void BindData()
{
GetDataSource(); // 绑定数据
grid.DataSource = dsCustomers;
grid.DataBind();
} // 获得数据源
private void GetDataSource()
{
if(Session["dsCustomers"] != null)
{
dsCustomers = (DataSet)Session["dsCustomers"];
}
else
{
dsCustomers = CreateDataSet();
Session["dsCustomers"] = dsCustomers;
} RenumberRowsForPaging(ref dsCustomers);
} // 对分页进行行的重新编号
private void RenumberRowsForPaging(ref DataSet ds)
{
dsCustomers.Tables["Customers"].DefaultView.RowFilter = "";
DataView dv = ds.Tables["Customers"].DefaultView; int i = 1;
foreach(DataRowView drwv in dv)
{
drwv["RowID"] = i;
i += 1;
}
} protected bool IsLastPage()
{
if (grid.CurrentPageIndex+1 == grid.PageCount)
return true;
return false;
} private void grid_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
ListItemType lit = e.Item.ItemType;
if (lit == ListItemType.EditItem)
{
// DataRowView drv = (DataRowView) e.Item.DataItem;
//
// DropDownList ddTitles = (DropDownList) e.Item.FindControl("ddTitles");
// if (drv != null)
// ddTitles.SelectedIndex = Array.IndexOf(aTitleOfCourtesy, drv["titleofcourtesy"].ToString());
} if (lit == ListItemType.Pager)
{
TableCell pager = (TableCell) e.Item.Controls[0]; for (int i=0; i<pager.Controls.Count; i+=2)
{
Object o = pager.Controls[i];
if (o is LinkButton)
{
LinkButton h = (LinkButton) o;
h.Text = "[ " + h.Text + " ]";
}
else
{
Label l = (Label) o;
l.Text = "<font color=red><b>第 " + l.Text + " 页</b></font>";
}
}
}
} private void grid_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
grid.CurrentPageIndex = e.NewPageIndex; BindData();
} private void grid_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.CommandName == "addNewRow")
{
// 获取dataset
DataSet ds = (DataSet) Session["dsCustomers"];
DataTable dt = ds.Tables["Customers"]; // 添加一个空行
DataRow dr = dt.NewRow();
dt.Rows.Add(dr); // 如果需要,可在此为一些列付默认值
// dr["column_name"] = ...
// Update the in-memory dataset
Session["dsCustomers"] = ds; int nNewItemIndex = grid.Items.Count; if (nNewItemIndex >= grid.PageSize)
{
grid.CurrentPageIndex ++;
nNewItemIndex = 0;
} grid.EditItemIndex = nNewItemIndex; BindData();
}
} private void grid_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
grid.EditItemIndex = e.Item.ItemIndex; BindData();
} private void grid_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
grid.EditItemIndex = -1; DataSet ds = (DataSet) Session["dsCustomers"];
DataTable dt = ds.Tables["Customers"];
DataRow drLast = dt.Rows[dt.Rows.Count-1]; if (drLast.RowState == DataRowState.Added)
{
drLast.RejectChanges();
if (grid.Items.Count == 1)
grid.CurrentPageIndex--;
}
BindData();
}
}