用c#开发 winform碰到这样的情况 得到一个dataset捆绑到textbox上 
现在问题是 更新不了 
也没提示错误
捆绑datagrid可以更新 但是textbox就不可以了不
代码是这样的
SqlConnection _conn=new SqlConnection(CommunionSearchConfiguration.ConnectionString);
SqlTransaction trans=null;
SqlDataAdapter taskDetailDataAdapter;
//make the taskDetailDataAdapter instance
SqlCommand selectTaskDetailComm=new SqlCommand(COMMANDTEXT,_conn); 
selectTaskDetailComm.CommandType=CommandType.StoredProcedure;
selectTaskDetailComm.Parameters.Add("@TaskID",SqlDbType.Int,4,"TaskID");
selectTaskDetailComm.Parameters["@TaskID"].Value=Convert.ToInt32(strtaskid);
...updatecoommand,insertcommand,deletecommand
taskDetailDataAdapter=new SqlDataAdapter(selectTaskDetailComm);
//SqlCommandBuilder taskCommandBuilder=new SqlCommandBuilder(taskDetailDataAdapter);
taskDetailDataAdapter.InsertCommand=insertTaskComm;
taskDetailDataAdapter.DeleteCommand=deleteTaskComm;
taskDetailDataAdapter.UpdateCommand=updateTaskComm;
try{ _conn.Open();
trans=_conn.BeginTransaction();
taskDetailDataAdapter.InsertCommand.Transaction=trans;
taskDetailDataAdapter.DeleteCommand.Transaction=trans;
taskDetailDataAdapter.UpdateCommand.Transaction=trans;
taskDetailDataAdapter.Update(taskDetailData.Tables[TaskDetailData.TASKDETAIL_TABLE].Select("","",DataViewRowState.Added));
taskDetailDataAdapter.Update(taskDetailData.Tables[TaskDetailData.TASKDETAIL_TABLE].Select("","",DataViewRowState.ModifiedCurrent));
taskDetailDataAdapter.Update(taskDetailData.Tables[TaskDetailData.TASKDETAIL_TABLE].Select("","",DataViewRowState.Deleted));
trans.Commit();
taskDetailData.AcceptChanges();
}

解决方案 »

  1.   

    textbox,要另一个变量来中转
    如:b=c;    textbox=b; //这个不要与b=c;在一个{}内
      

  2.   

    绑定为TextBox的时候怎么确定DataViewRowState,
    比如为DataGrid的时候,增加修改或者删除datagrid的内容可以使taskDetailData中行的状态为Added,ModifiedCurrent,Delete.
    绑定TextBox怎么办?除非你用程序改变taskDetailData的内容
      

  3.   

    to  charles_y
    那是否要用 datatable datarow
      

  4.   

    其实我是想做一个捆绑textbox的更新
    to  charles_y
    有无好点的例子
      

  5.   

    可以用dataset dataadapter datatable datarow来更新