Changes in Designer cause irreversible parameter problems
For example: If you set up a layout that can have a flex value associated with it, set the flex value, then try a new layout of a kind that does not have a flex value associated with it, decide you don't like the new layout and switch back to the original one (manually, not with "undo"), the flex value is gone.
This is solely an example -- the problem happens all over the place, and I assume this behavior is actually by design in that it is due to a lack of state in the program and an arguably appropriate discarding of inapplicable property/value pairs, so that once a change has been made, due to the parameters being discarded, there is no way to revert to the old state. But, by design or not, it can be time consuming to reset all those parameters, or potentially cause bugs due to not finding them all.
Note that I assume "undo" does not suffer from this problem (haven't checked), but "undo" does not suffice when you aren't always doing things in order or during the same session.
That's a first lol. So, I guess that means no fix - I can see it getting too complicated, and actually undesirable, to start storing hidden parameters to add them in case that componet gets converted to a type that would use them.
Yea... we have experimented with some things like that, keeping around stale configurations and restoring them when they are then applicable but it sort of causes strange behavior at times when you have layouts that overlap and you didn't expect them to.
The current way is consistent. Not saying it won't change in the future; but its this way for now.