私はSQLDataSourceを持つGridviewを持っています。 LinkButtonのクリックイベントは、データベースに新しいレコードを挿入します。その後、私はGridviewを編集モードにして、追加された新しいレコード/行を選択します。私はそれを行うために管理:Gridview:EditからItemModeに切り替えてコードで編集する
protected void AddNewMS(Object sender, EventArgs e)
{
SqlConnection objConn = new SqlConnection("Data Source=XXXXX");
SqlCommand objCommand = new SqlCommand(@"Declare @NewOrderNumber int
Set @NewOrderNumber = (Select TOP 1 OrderNr + 1 from EPC_Milestones ORDER BY OrderNr desc)
Insert into EPC_Milestones (Active, OrderNr) Values (0, @NewOrderNumber)
Select @NewOrderNumber", objConn);
objConn.Open();
var query = objCommand.ExecuteScalar();
objConn.Close();
int result = 0;
if (query != null)
{
result = Convert.ToInt32(query);
}
Gridview1.DataBind();
Gridview1.EditIndex = -1;
Gridview1.EditIndex = result - 1;
}
私は(オブジェクト参照オブジェクトのインスタンスに設定されていない)、右後でそれをチェックすると、私に迷惑を与えるその行のチェックボックスがあります。しかし、私が編集モードを離れる場合。 「キャンセル」をクリックしてもう一度「編集」に戻ると、このチェックは完全に機能します。私はこれら2つの操作をコードに変換したいので、Gridview1.EditIndex = -1を実行してもう一度やり直してみました。しかし、それは動作しません。グリッドビューを完全に更新するにはどうすればよいですか?