I have an UltraGrid with AllowAddNew = TemplateOnBottom
One column has an UltraComboEditor and when a value is selected, it dynamically fills a second UltraComboEditor in the next column. It also sets the NullText of the second UltraComboEditor.
Instead of appearing inside the second UltraComboEditor, the NullText appears on the next row under the UltraComboEditor, and only AFTER a value is selected from this second dropdown.
The reason I'm doing this is that the type of values in the second UltraComboEditor can change depending on the first dropdown's value, so I wanted to let the user know what type of list it is.
You are correct this is the default behavior. What actually happens is that when using AllowAddNew.TemplateOnBottom, when the user adds some data into the cells of the AddNewRow the row is added to the grid. So, when the user selects a value from the UltraComboEditor the cell that holds this value has data inside it and the row is already added to the grid.
What I can suggest you is using AllowAddNew.FixedAddRowOnBottom, it places a fixed AddnewRow on the bottom of the grid and it does not add the row unless the user presses the enter key. With this you would be able to select the values from both UltraComboEditors as well as setting values for every other cell, without adding the row to the grid.
Please let me know if you have any questions.
Regards, Ivan Kitanov