我的问题都已经好几天,还未解决?

jiajia1 2003-04-13 06:49:51
请各位高手帮我检查代码的错误。谢谢!

public void DataGrid1_Delete(Object sender, DataGridCommandEventArgs e)
{
string deleteCmd = "DELETE from qw where q1 = @q1";

SqlCommand sqlCommand1 = new SqlCommand(deleteCmd,sqlConnection1);
sqlCommand1.Parameters.Add(new SqlParameter("@q1", SqlDbType.Char, 6));
sqlCommand1.Parameters["@q1"].Value =DataGrid1.DataKeys[(int)e.Item.ItemIndex];

sqlCommand1.Connection.Open();

sqlCommand1.ExecuteNonQuery();

sqlCommand1.Connection.Close();

Bindgrid();
}//public void DataGrid1_Delete(Object sender, DataGridCommandEventArgs e)

//string deleteCmd = "DELETE from qw where q1=@q1 ";
//SqlCommand sqlCommand1 = new SqlCommand(deleteCmd, sqlConnection1);
//sqlCommand1.Parameters.Add(new SqlParameter("@q1", SqlDbType.Char,6));
  //sqlCommand1.Parameters["@q1"].Value = DataGrid1.Columns .ToString ();
//sqlCommand1.Connection.Open();

//int id=DataGrid1.SelectedIndex;
//string q11=this.DataGrid1.DataKeys[(int)id+1].ToString();
//.Item.Cells[1].Text;
//string sqlstr="delete from qw where q1="+"'"+q11+"'";
//sqlConnection1.Open();
//System.Data.SqlClient.SqlCommand sqlDeleteCommand2=new System.Data.SqlClient.SqlCommand(sqlstr,sqlConnection1);
//sqlDeleteCommand2.ExecuteNonQuery();
//sqlConnection1.Close();

//String deleteCmd = "DELETE FROM qw WHERE q1 d='"+datagrid.DataKeys[i].ToString()+"'";
//SqlCommand sqlCommand1 = new SqlCommand(deleteCmd, sqlConnection1);
//sqlCommand1.Parameters.Add(new SqlParameter("@q1",
//sqlDbType.Char, 6));
// Initialize the SqlCommand "@Id" parameter to the ID of the row
// that was clicked.

//sqlCommand1.Parameters["@q1"].Value =
//DataGrid1.DataKeys[(int)e.Item.ItemIndex];
// Connect to the database and delete the specified row.
//sqlCommand1.Connection.Open();
// Test whether the delete was accomplished and display the
// appropriate message to the user.

//sqlCommand1.ExecuteNonQuery();






//private void Button5_click(object sender, System.Web.UI.WebControls.DataGridCommand.EventArgs e)

//this. sqlDeleteCommand2.Parameters["@q1"].Value=this.TextBox5.Text.ToString();
//string sqlstr="delete from qw where q1=@q1";
//sqlConnection1.Open();
//System.Data.SqlClient.SqlCommand sqlDeleteCommand2=new System.Data.SqlClient.SqlCommand(sqlstr,sqlConnection1);
//sqlDeleteCommand2.ExecuteNonQuery();
//sqlConnection1.Close();



//private void DataGrid1_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)

// int delRow=e.Item.ItemIndex; //获取删除列
// this.dataSet11.q1.Rows[delRow].Delete();//在数据集中删除数据
// this.sqlDataAdapter1.Update(this.dataSet11);//将数据集更改提交到数据库
// this.DataGrid1.DataBind();//刷新DataGrid
...全文
33 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiajia1 2003-04-16
  • 打赏
  • 举报
回复
我调试过你给我的代码,但还是没实现。但也没有提示错误信息。
jiajia1 2003-04-14
  • 打赏
  • 举报
回复
why????
jiajia1 2003-04-14
  • 打赏
  • 举报
回复
多谢了,private void InitializeComponent()
{
........
this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);
。。。。。
}

InitializeComponent是什么意思?
因为我是初学者,请多多赐教。
pengweihua 2003-04-14
  • 打赏
  • 举报
回复
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
switch(e.CommandName)
{
case "Delete":
string deleteCmd = "DELETE from qw where q1 = @q1";

SqlCommand sqlCommand1 = new SqlCommand(deleteCmd,sqlConnection1);
sqlCommand1.Parameters.Add(new SqlParameter("@q1", SqlDbType.Char, 6));
sqlCommand1.Parameters["@q1"].Value =DataGrid1.DataKeys[(int)e.Item.ItemIndex];

sqlCommand1.Connection.Open();

sqlCommand1.ExecuteNonQuery();

sqlCommand1.Connection.Close();

Bindgrid();
break;

}

}

然後在這裡面加上這句話this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);

private void InitializeComponent()
{
........
}


即:

private void InitializeComponent()
{
........
this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);
。。。。。
}






jiajia1 2003-04-14
  • 打赏
  • 举报
回复
能具体一点吗?
pengweihua 2003-04-14
  • 打赏
  • 举报
回复
private void InitializeComponent()
{
this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);
this.Load += new System.EventHandler(this.Page_Load);

}
add:

this.DataGrid1.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_ItemCommand);

pengweihua 2003-04-14
  • 打赏
  • 举报
回复
把它改一下:
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
switch(e.CommandName)
{
case "Delete":
//增加你的刪除代碼;
break;

}

}
jiajia1 2003-04-14
  • 打赏
  • 举报
回复
怎么没人回答我的问题.......
pengweihua 2003-04-14
  • 打赏
  • 举报
回复
此為設計工具支援所必需的方法
jiajia1 2003-04-13
  • 打赏
  • 举报
回复
注释部分,我已调试。也有sqlCommand1.Parameters["@q1"].Value =DataGrid1.DataKeys[(int)e.Item.ItemIndex].ToString() ;这句
jiajia1 2003-04-13
  • 打赏
  • 举报
回复
q1 字段的TYPE 是Char
erictang2003 2003-04-13
  • 打赏
  • 举报
回复
1) sqlCommand1.Parameters.Add(new SqlParameter("@q1", SqlDbType.Char,6));
q1 字段的TYPE 是Char 吗?

2) Try : sqlCommand1.Parameters["@q1"].Value =DataGrid1.DataKeys[(int)e.Item.ItemIndex].ToString() ;
jiajia1 2003-04-13
  • 打赏
  • 举报
回复
我是用DELETE,删除啊!
xzgtysx 2003-04-13
  • 打赏
  • 举报
回复
你好象没有使用update()
jiajia1 2003-04-13
  • 打赏
  • 举报
回复
我已经制定 DataKeyField ,但我想不通,为什么我点击删除时,没有反映,也不会出错。查了库中的数据,也没删除。请教高手们。
jiajia1 2003-04-13
  • 打赏
  • 举报
回复
我已经制定 DataKeyField ,但我想不通,为什么?
erictang2003 2003-04-13
  • 打赏
  • 举报
回复
我想最大可能是:
DataGrid 没有制定 DataKeyField !

<ASP:DataGrid id="MyDataGrid" runat="server"
Width="800"
BackColor="#ccccff"
BorderColor="black"
ShowFooter="false"
CellPadding=3
CellSpacing="0"
Font-Name="Verdana"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
DataKeyField="emp_id" //-----------------------------important!
OnDeleteCommand="MyDataGrid_Delete"
>
jiajia1 2003-04-13
  • 打赏
  • 举报
回复
没有提示,但不能达到效果,不能删除
erictang2003 2003-04-13
  • 打赏
  • 举报
回复
错误提示是什么?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧