纠正下不是没有触发,是dataset没有发现有更改

解决方案 »

  1.   

    TextBox是通过DataTable赋值,还是绑定了。绑定了有对应的TextChange事件来更改DataTable里面的值吗?
      

  2.   

    这是加载
    private void Form_Load()
    {
      personTableAdapter.Fill(shoppingDataSet.Person);
      shoppingDataSet.AcceptChanges();
      txtName.DataBindings.Add("Text",personBindingSource,"Name")
    }
    下面是下一页按钮事件
    private void btnNext_ItemClick()
    {
      pageNo++;
      if(shoppingDataSet.HasChanges())  //这里我设了断点,程序直接跳过,没有执行里面的代码
        {
        }
    }补充下,shoppingDataSet是我加到解决方案中的数据集,personBindingSource是textBox绑定项目数据源后出现的,personBindingSource的DataSource是shoppingDataSet
      

  3.   

    添加按钮执行代码personBindingSource.AddNew();点下一页按钮时,shoppingDataSet.HasChanges())=true ,执行了if里面的代码
    修改按钮执行代码shoppingDataSet.Person.DefaultView.AllowEdit=true;点下一页就shoppingDataSet.HasChanges())=false
    难道我修改这里的代码不对么