Our application has a central main form. Since we are at the start of the project a lot of buttons and controls are being added to this form. This, as expected, creates conflicts when merging our code together using VCS. It is also almost impossible to solve the conflicts since the designer part of a form is generated automatically.
I was wondering if there is a practice or workflow strategy to minimize conflicts in a form where several people work on.
Remove as much logic as you can so your form becomes simply a view. This minimizes the conflicts - but it doesn't resolve them entirely.
Your best strategy is to make sure people pull from and push to your master/trunk/branch as often as possible so the conflicts are minimal.
If your team mainly works on feature branches, then have someone dedicated (or a couple of developers working closely together) do the feature merges back to your master/trunk. The conflicts will be many, but this alleviates the need for individual developers to track merge conflicts and attempt to fix them in isolation. The developer(s) responsible for the merging back to master/trunk will know what needs to come in/be left out and can manage it as part of their process.
Again though - your best bet is to make your form literally be a dumb view that does nothing but render controls. Everything else should be handled elsewhere.