您的位置:首页 > 汽车及配件 > 汽配 > 关于DataGrid中如何添加,删除一行

关于DataGrid中如何添加,删除一行

luyued 发布于 2011-01-04 05:46   浏览 N 次  
#region 关于DataGrid中如何添加,删除一行
/*
我做过一个类似的程序。
首先在itemtemplate中添加textbox,也就是所有datagrid中的项从一开始就是textbox
点击添加按钮后datagrid最上面出现空行,而datagrid中所有的行都是通过控制textbox的enable属性来控制是否允许更改。
private void bt_Add_Click(object sender, System.EventArgse)
{
DataSetds=(DataSet)ViewState["ds"];
DataRownewrow=ds.Tables[0].NewRow();
newrow[0]=0;//设置临时值
newrow[1]="";//设置临时值
ds.Tables[0].Rows.InsertAt(newrow,0);//在datagrid最上方加入一个空行
DataGrid1.DataSource=ds.Tables[0].DefaultView;
DataGrid1.DataBind();
bt_Submit.Enabled=true;
bt_Cancel.Enabled=true;
bt_Add.Enabled=false;

DisableDataGrid();//让所有的textbox都不可编辑
TextBoxtb=(TextBox)(DataGrid1.Items[0].Cells[1].Controls[1]);
tb.Enabled=true;//使datagird中新添加的行允许修改
}
private void DisableDataGrid()
{
foreach(DataGridItemdgi in DataGrid1.Items)
{
TextBoxtb=(TextBox)(dgi.Cells[1].Controls[1]);
tb.Enabled=false;
}
}
*
*
在DATAGRID里填加一行,只要将记录指向最后,就可以编辑了。想要删除,只要选择这行并按‘DELETE’键就行,不过,这只是在缓存里的增减,想要真正提交到数据库还要执行数据集(表)的
AcceptChanges();
和数据适配器的
UPDATE()
着两个方法。

这些内容帮助里有。
---------------------------------------------------------------

准确地讲,应该是往绑定的数据源添加或删除行。
试试这个:
\\添加
dg.BindingContext[dg.DataSource,dg.DataMember].AddNew();
\\删除
int index;
dg.BindingContext[dg.DataSource,dg.DataMember].RemoveAt(index);
---------------------------------------------------------------

你应该是用数据绑定做的,可以这样:
int aaa;//aaa是随便的一个名字
aaa = dataGrid1.CurrentRowIndex;
dataSet11.Tables[0].Rows[aaa].Delete();
这样数据集中的数据将被更改,用
sqldataadapter.update(你的数据集名);
可以把数据集的数据填充到数据库中;
增加~你自己来吧
*/
#endregion
图文资讯
广告赞助商