When I click "Add", fill-in data and then "OK", the data has successfully put in the collection but "Add" button is still disabled.
I have to click "Edit" follow by "Cancel" so that the "Add" button become enabled again.
Now I know what cause the problem.
The dataform was bound to a ListCollectionView of objects that implement IEditableObject and INotifyPropertyChanged.
By design, those objects raised OnPropertyChanged event on EndEdit or CancelEdit method because there were some changes in their internal properties. This made the dataform think the object has been changed again so it didn't enable navigation and Add New buttons.
My question, can we make the dataform pay attention to only those properties bound to UI element under the dataform, or is there any other solution?