0

我有这个command fieldDetailsView

<asp:CommandField ShowInsertButton="True" CancelText="Reset" />

当用户单击此链接时,它将用户填写的数据DetailsView插入到数据库中。但是我想DetailsView在插入之前将文本设置为两个文本框。我可以在后面的代码中做到这一点。我已经通过将OnItemInserting事件添加到DetailsView. 但它不起作用。代码中的数据集未插入到数据库中。

后面的代码

protected void ABC_DV_ItemInserting(Object sender, DetailsViewInsertEventArgs e)
        {

  TextBox p = (TextBox)LKArea_DV.FindControl("txt_p");

  TextBox x= (TextBox)ABC_DV.FindControl("txt_x");
  TextBox y= (TextBox)ABC_DV.FindControl("txt_y");

  string[] q = p.Text.Trim().Split(',');

  x.Text = q[0];
  y.Text = q[1];

       }

我怎么能这样做?

4

1 回答 1

0

使用 ItemCommand 事件

  1. 从 DetailView 控件中获取控件,如 Textbox。
  2. 检查它们是否为 NULL
  3. 如果不为空,则获取值
  4. 执行 Insert ,更新你喜欢的任何操作
  5. 提交更改
  6. 重新绑定您的控件

它应该工作。希望有帮助

于 2012-12-26T07:54:39.320 回答