Hello XAF Team,
In Web UI, I found a bug in 'inline edit' mode of list views:
- When a property editor is changed (decorated with ImmediatePostData attribute), if the input focus is moved out of this property editor, then callback will be triggered, and saving the record will work smoothly. <== OK
- When a property editor is changed (decorated with ImmediatePostData attribute), immediately click 'Update' inline action to save the record directly. Now, the callback was not triggered, as if it does not exist. <== Bug
Note: In Win UI, the same scenario works without any issue.
To learn how to re-produce the above bug, please see the attached VS2010 + v12.2.6 solution, as well as the .mp4 screen video (VS solution and .mp4 are exactly the same as Q472173, but this is a different bug than that).
UPDATE: 'Log' column is used for demo purpose. In real business scenarios, 'Log' column may stand for 'Unit of Measure', 'Discount Amount', 'Currency Rate', etc. End users need to change the default value (calculated by ImmediatePostData).
UPDATE 2: If I decorate 'Log' column as AllowEdit = false (according to your recommendation), then two new bugs appear:
-- 1) When a new row is inserted (inline mode), the 'Log' column (AllowEdit = false) is displayed as editable (but you cannot input any value in it). ***Until a first callback is triggered, it remains 'editable' (because there is not any 'grey' text), not 'read only'***;
-- 2) When a new row is inserted (inline mode), try click 'Up' or 'Down' spin button of 'Integer Property' column, and then click checkbox of 'Boolean Property' column or select a date in 'DateTime Property' column, you'll find that only 'Interger Property' column can trigger further callbacks. Only the first column which triggers callback (to update the read only 'Log' column) can trigger additional callbacks, before you save the new row. This bug does not occur when editing a saved row.
In short (April 9, 2013): After inserting a new row, if a callback is triggered after changing a column, then other columns may be unable to trigger callbacks any more.
Regards,
James