Isn't this the situation where you must turn autoDetection off
hex is exactly right.
This is one of the main reasons I dislike auto detection. After the initDialog in your dialog executes, then auto detection goes through and resets all the controls. Causing what you see.
This was one of the most frustrating things I dealt with in trying to understand how ooDialog worked. The original IBM doc, didn't explain most of it, and much of the little it did say was misleading.
You should read the section in the Dialog Object chapter, Data Attribute Method, the first 3 parts. None of that information was available until I re-worked the docs for ooDialog 4.2.0
You can also use the .application object to turn auto detection off for the entire program, rather than use ::method initAutoDetection in each dialog.