从Datagridview删除选定的行 [英] Delete the selected rows from Datagridview
本文介绍了从Datagridview删除选定的行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您好,任何人都可以通过代码段从datagridview删除选定的行(多选)的代码片段.删除之前,我想检查要删除的项目是否由已登录的用户添加.
在此先感谢
Hi, Can anyone ahare code snippet for deleting the selected rows(multi select) from a datagridview. Before delete I want to check whether the items going to be deleted are added by the user who has logged in.
Thanks in advance
private void btnDelete_Click(object sender, EventArgs e)
{
dgDtParameters.AllowUserToDeleteRows = true;
System.Data.DataTable objDt = new System.Data.DataTable();
DataRow objdrDelete;
DataSet dsAdmin = new DataSet();
try
{
objConnection = new DBAccess();
SqlParameter[] sqlparamAdmin = {
new SqlParameter("@accountID",iaccountID),
new SqlParameter("@projectID",iprojectID),
new SqlParameter("@componentID",icomponentID),
new SqlParameter("@createdBy",CCommonInfo.iUserID),
};
dsAdmin = objConnection.GetDataSet("prcDisplayAdmindataTemplate", sqlparamAdmin);
if (iRoleID == 1 || iRoleID == 2 || iRoleID == 3)
{
if (MessageBox.Show(CompCreatorMsg.Msg_DPDelete, CompCreatorMsg.Title_DPDelete, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
objDt = dsobbtemp.Tables[0];
objdrDelete = objDt.NewRow();
//if (objDt != null)
{
for (int i = 0; i < objDt.Rows.Count; i++)
{
objdrDelete["objectRevisedName"] = objDt.Rows[i]["objectRevisedName"].ToString();
srowFilter = "objectRevisedName = ''" + objdr["objectRevisedName"].ToString() + "''";
if (dsAdmin.Tables[0].Select(srowFilter).Length == 0)
{
SqlParameter[] sqlparam = {
new SqlParameter("@objectID",Convert.ToString(objDt.Rows[i]["objectID"]))
};
iResults = objConnection.ExecuteCommand("prcDeleteDataTemplate", sqlparam);
}
}
}
objDt.Clear();
objDt.Dispose();
}
}
}
catch (Exception exGeneral)
{
MessageBox.Show(exGeneral.Message + exGeneral.StackTrace.ToString());
}
}
推荐答案
请参阅以下内容:
http://social.msdn.microsoft.com/Forums/zh/winformsdatacontrols/thread/fbe691ae-ec83-4a09-8766-0088cfcc1ea3 [ http://stackoverflow.com/questions/777208/how-to-delete-row-from-datagridview-with-a-delete-button [ http://stackoverflow.com/questions/5539243/如何从数据网格视图和数据库删除行 [
Hi,
Refer below:
http://social.msdn.microsoft.com/Forums/en/winformsdatacontrols/thread/fbe691ae-ec83-4a09-8766-0088cfcc1ea3[^]
http://stackoverflow.com/questions/777208/how-to-delete-row-from-datagridview-with-a-delete-button[^]
http://stackoverflow.com/questions/5539243/how-to-delete-a-selected-row-from-datagridview-and-database[^]
try
{
sqlConnection.Close();
int nn = dataGridView1.SelectedCells [0] .RowIndex;
字符串s = dataGridView1 [0,nn] .Value.ToString();
int n = Convert.ToInt32(s);
SqlCommand cmd =新的SqlCommand(从Master_Vlc中删除,其中Vlc_Code =" + n,sqlConnection);
ds = new DataSet();
sqlConnection.Open();
sqlDataAdapter =新的SqlDataAdapter(cmd);
sqlDataAdapter.Fill(ds,"Master_Vlc");
MessageBox.Show(已删除值");
sqlConnection.Close();
dataGridView1.Rows.RemoveAt(nn);
}
catch(ex ex例外)
{
MessageBox.Show(ex.Message.ToString());
}
try
{
sqlConnection.Close();
int nn = dataGridView1.SelectedCells[0].RowIndex;
string s = dataGridView1[0, nn].Value.ToString();
int n = Convert.ToInt32(s);
SqlCommand cmd = new SqlCommand("delete from Master_Vlc where Vlc_Code=" + n, sqlConnection);
ds = new DataSet();
sqlConnection.Open();
sqlDataAdapter = new SqlDataAdapter(cmd);
sqlDataAdapter.Fill(ds, "Master_Vlc");
MessageBox.Show("Value Deleted");
sqlConnection.Close();
dataGridView1.Rows.RemoveAt(nn);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString());
}
这篇关于从Datagridview删除选定的行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文