如何在datagridview中修改和删除数据?

usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Da... using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace XSERP
{
public partial class ClientFind : Form
{

public ClientFind()
{
InitializeComponent();
}

private void button5_Click(object sender, EventArgs e)
{
DBOperate dbo = new DBOperate();
try
{
SqlConnection conn = dbo.getConnection();
string SqlStr = "select * from clientbase where 客户名称= '" + textBox1.Text + "'";
if (textBox1.Text == "")//若输入为空
{
MessageBox.Show("请输入客户名称", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{

SqlDataAdapter ada = new SqlDataAdapter(SqlStr, conn);
DataSet ds = new DataSet();
ada.Fill(ds);
this.dataGridView1.DataSource = ds.Tables[0].DefaultView;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "错误");
}
}

private int rowIndex = 1;
public int getIndex()
{
return rowIndex;
}

private void ClientFind_Load(object sender, EventArgs e)
{
// TODO: 这行代码将数据加载到表“xSERPDataSet1.clientbase”中。您可以根据需要移动或移除它。
this.clientbaseTableAdapter.Fill(this.xSERPDataSet1.clientbase);

}

private void toolStripMenuItem1_Click(object sender, EventArgs e)
{ }
/* DBOperate dbo = new DBOperate();
SqlConnection conn = dbo.getConnection();
string Str = "delete from clientbase where 客户类别='" + dataGridView1.Rows[rowIndex].Cells[0].Value + "'";

SqlCommand cmd1 = new SqlCommand(Str, conn);

conn.Open();

//SqlDataReader reader = cmd1.ExecuteReader();
// cmd1.ExecuteNonQuery();

*/
}

}
展开
 我来答
可以叫我表哥
推荐于2016-06-23 · 知道合伙人数码行家
可以叫我表哥
知道合伙人数码行家
采纳数:25897 获赞数:1464984
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。

向TA提问 私信TA
展开全部
可以使用SqlDataAdapter更新命令:

01.public int UpdateData(DataSet ds, string strTblName, string strConn)
02. {
03. try
04. {
05. //创建一个数据库连接
06. SqlConnection conn = new SqlConnection(strConn);
07.
08. //创建一个用于填充DataSet的对象
09. SqlCommand myCommand = new SqlCommand("SELECT * FROM " + strTblName, conn);
10. SqlDataAdapter myAdapter = new SqlDataAdapter();
11. //获取SQL语句,用于在数据库中选择记录
12. myAdapter.SelectCommand = myCommand;
13. //自动生成单表命令,用于将对DataSet所做的更改与数据库更改相对应
14. SqlCommandBuilder myCommandBuilder = new SqlCommandBuilder(myAdapter);
15. myAdapter.Update(ds, strTblName); //更新ds数据
16.
17. return 0;
18. }
19. catch (Exception err)
20. {
21. throw err;
22. }
23. }
枰魂尔晶来福5095
2010-11-22 · TA获得超过394个赞
知道答主
回答量:189
采纳率:0%
帮助的人:190万
展开全部
datashow_1.Rows[0].Cells[7].Value=
这是第0行第7列的数值
可以根据需要去修改
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
champ4077
推荐于2016-04-22 · TA获得超过111个赞
知道答主
回答量:85
采纳率:0%
帮助的人:0
展开全部
修改的方法
先将datagridview与datatable通过bindingsource绑定
可直接在datagridview中修改,或者修改datatable达到修改datagridview的目的

删除的方法
ArrayList al = new ArrayList();
//讲选择的行的编号保存到al中
foreach (DataGridViewRow dr in dataGridView1.SelectedRows)
{
al.Add(dr.Cells["编号"].Value);
}
//遍历datagridview1的每一行,如果编号等于al中的元素值则删除该行
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
foreach (Object x in al)
{
if (dataGridView1.Rows[i].Cells["编号"].Equals(x))
{
dataGridView1.Rows.Remove(dataGridView1.Rows[i]);
break;
}
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友8e5bff0e3
2010-11-21
知道答主
回答量:9
采纳率:0%
帮助的人:0
展开全部
模板设置那里可以找到直接拖界面,自己找下吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhy_19
2010-11-21 · TA获得超过768个赞
知道小有建树答主
回答量:439
采纳率:0%
帮助的人:325万
展开全部
使用datatable保持同步更新
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式