private SqlDataAdapter adapter=null;
        private SqlConnection connection=null;
        private SqlCommandBuilder builder;
        private DataSet datasetTree = null;
        private DataTable dtTree = null;
        private TreeNode tnSelected = null;        private void Organization_Load(object sender, EventArgs e)
        {
            connection = new SqlConnection("Data Source=hfserver;Initial Catalog=MRP;Persist Security Info=True;User ID=sa;Password=daishaofen");
            adapter = new SqlDataAdapter();
            adapter.SelectCommand = new SqlCommand("SELECT ID,Name,ParentID FROM mr.Organization", connection);
            builder = new SqlCommandBuilder(adapter);
            connection.Open();
            datasetTree = new DataSet();
            adapter.Fill(datasetTree,"Organization");
            dtTree = datasetTree.Tables[0];
            CreateTree();
        }        private void button1_Click(object sender, EventArgs e)
        {
            adapter.Update(dtTree);
        }

解决方案 »

  1.   

    你的dtTree数据都没有改动,当然不会更新了。
      

  2.   

    用企业库吧,update简单多了。
      

  3.   

    我在另一个window 修改了
            private void button1_Click(object sender, EventArgs e)
            {
                // Find node info from data table
                DataRow[] drArray = dtTree.Select(string.Format("ID = {0}", tnSelected.Tag), "ID ASC", DataViewRowState.CurrentRows);
                if (drArray.Length == 0) return;
                else if (drArray.Length == 1)
                {
                    // Update data to data table
                    drArray[0].BeginEdit();
                    drArray[0].EndEdit();
                }
                // Update tree node 
                tnSelected.Text = txtName.Text;
                dtTree.Rows[0]["Name"]=txtName.Text;
                this.DialogResult = DialogResult.OK;
            }
      

  4.   

    对DataSet、DataTable或DataRow没有进行状态修改,不会进行更新,初学者常常使用SqlCommandBuilder来生成修改的Sql语句,这样并不可取。
    请楼主看下面的文章来理解ado.net的更新过程,http://blog.csdn.net/zhzuo/archive/2004/08/06/67016.aspx
    http://blog.csdn.net/zhzuo/archive/2004/08/06/67037.aspxhttp://blog.csdn.net/zhzuo/archive/2005/01/03/238273.aspx