使用了EditCommandColumn ,可以正常修改,但是不知道为什么每次都要点击编辑按钮两次才能显示编辑,而且文本框里面没有显示值我比较郁闷的是为什么会要点两次,而且要修改的内容居然在没有在文本框显示
但是把内容填写进去后确实能显示。
请哪位大哥帮忙解决一下部分代码如下
<asp:EditCommandColumn EditText="编辑" UpdateText="修改" CancelText="取消"></asp:EditCommandColumn> private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex=(int)e.Item.ItemIndex;
} private void DataGrid1_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex = -1;
BindGrid(); } private void DataGrid1_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{ string TextBox1 = ((System.Web.UI.WebControls.TextBox)e.Item.Cells[1].Controls[0]).Text;
String SqlStr;
SqlStr="update Proclass set classname='"+TextBox1+"' where ClassId="+e.Item.Cells[0].Text ;
DM.ExecuteCMD(SqlStr,"conn");
DataGrid1.EditItemIndex = -1;
BindGrid(); }
但是把内容填写进去后确实能显示。
请哪位大哥帮忙解决一下部分代码如下
<asp:EditCommandColumn EditText="编辑" UpdateText="修改" CancelText="取消"></asp:EditCommandColumn> private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex=(int)e.Item.ItemIndex;
} private void DataGrid1_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex = -1;
BindGrid(); } private void DataGrid1_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{ string TextBox1 = ((System.Web.UI.WebControls.TextBox)e.Item.Cells[1].Controls[0]).Text;
String SqlStr;
SqlStr="update Proclass set classname='"+TextBox1+"' where ClassId="+e.Item.Cells[0].Text ;
DM.ExecuteCMD(SqlStr,"conn");
DataGrid1.EditItemIndex = -1;
BindGrid(); }
中加
if(!Page.IsPostBack)
{
//数据绑定
}
private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex=(int)e.Item.ItemIndex;
BindGrid() ; }
Page_Load()
中加
if(!Page.IsPostBack)
{
//数据绑定
}
你说的对 ,是因为我那里没有数据绑定的原因
同时感谢mazekui(悠悠春竹)
我马上给分
{
DataGrid1.EditItemIndex=(int)e.Item.ItemIndex;
BindGrid() ; }