Recently I bumped into it again with one of the more current Delphi XE* versions and Delphi 2007: the IDE changing the DFM files without reason.
This time it was in a multi-team environment with many branches and DFM merge hell.
A few examples of properties and components getting changes:
- The Explicit* properties on components not using either Align or Anchors (unlike the article from JED Software: D2006: What on earth are these Explicit* properties in my DFM suggests), often compound components like TabSheet, most often with useless documentation and these values:
- ExplicitLeft = 0
- ExplicitTop = 0
- ExplicitWidth = 0
- ExplicitHeight = 0
- TImageList property Bitmap.
Warren P suggests to review your DFM changes before committing to version control and I completely agree: it is the only way to ensure they are indeed unwanted changes.
There are some stop-gab things you could try, but these only partially help
- Eric Grange uses a Resource based ImageList with design time editors. I wish that was open source, and I’m not alone on this (:
- André Mussche suggests to use DDevExtensions to switch of saving Explicit* properties but that kills all of them, including the ones you need.
–jeroen
via: