I have a MDI windows forms application and my child forms mostly have "OK" and "Cancel" buttons. However I do not want them to be activated with ENTER/ESC keys to prevent accidental saves/aborts. So, the form has both AcceptButton and CancelButton set to none. The ESC button indeed does nothing, but the ENTER button still closes the form by "clicking" on the first button found, sorted by TabOrder.
Why is this so? Must I really start doing workarounds and catching the ENTER key?
Added: OK, this is way weirder. Reflector tells me that apparently if the first control by Tab Order (well, actually the control which is active by default when the form is opened) is a button, then it gets assigned as the default control. Otherwise nothing happens. Now the question changes to: WTF?!