You definitely want to install the holes before painting so the edges of the holes do not rust and stain the grill paint. You can do it on the vehicle all assembled with some help no problem. I put the trim all together then positioned it where I wanted it (it does not fit in any ONE place you can move it around a bit) then drew a pencil line on each side of the trim along the top piece. Then I put a hole in the center of the two lines in the middle of the grill. Then I did the same for the bottom row but I put the trim back on and lightly installed the top fastener. This way you know it is where it is going to be. Then I install the bottom and top fasteners lightly. With the grill hanging on these I ran a line on each side of the top and trim, took it off, drilled the holes installed all the fasteners. I kept doing this until the top and bottom where neatly installed. As the trim gets tightened down the sides move a little and this lets you mark them in the final position plus they have some adjustment. Fun job if you have some patience.
I was too cheap to buy the OEM grill trim mounting kit. I went to Home Depot and bought 20 nylon 1/4-20 screws and nuts. Then I gently ground down the hex to make it fit the trim channel. They work great and do not rust plus it was $3~