There is no one set way to do this. It depends on what you are going for, what you are modeling or any special cases you are adhering to, etc.
In your case here, since you have basically two flat surfaces, you can add supporting edge loops to the outer mesh and join the matching edges together by selecting the edgeloops and manually filling each one with F, the images differ a bit but I think you get the point. (Also, your flat outer mesh does not seem to need so many loops at the moment, you can remove some.)

In the example above you can also bridge the two edge loops by using Ctrl + E > Bridge Edge Loops after selecting the outer and inner edges to connect. This only works when the amount of edges are equal in both loops, but it will give a nice and cleaner result.
Or you can just select an edgeloop and use Alt+F to fill the gaps. (I added an edgeloop to the middle of the frame in the image below before filling and aligned it accordingly with the other mesh so it stayed flat.) You can do the same or use one of the existing ones depending on what you are going for.
