Initialize properties on load event or constructor?
Yes, but be careful what you do in the form designer, as the visual designer will trigger this when you open the form for editing.
If you put something here that relies on other things that are configured at runtime, it might throw an error and you won't be able to edit the form's layout.
I would say putting it in the Load form for this reason.
source to share
You must initialize properties in the constructor. The constructor is obviously only called once per form instance. The load event handler will be called every time the form is displayed. Also, if you've done an initialization operation, such as populate a combo box, in a load event handler, you need to write some rather hoarse code to preselect a value in that combo box before displaying the form. This is just one example. Hope it helps.
source to share