Question: I have a Macbook Pro with the four USB-C / thunderbolt ports, running High Sierra. I have a USB-C to DVI cable. I have tried an old 1680x1050 monitor connected it which works fine. However another 2560x1440 monitor does not; it just doesn't display anything when connected, the same as having no signal. That monitor works fine when connected to a PC at full resolution with a DVI to DVI cable.

I'm pretty sure this is because the resolution is too high for the cable. When I change it to mirror the displays in the System Preferences > Displays > Arrangement settings, I can control the resolution of the external monitor from the main laptop screen and set it to 1920x1080 and it works fine. However, as soon as I set it back to not be mirrored, the setting for the external monitor goes back to being displayed on that monitor at the max resolution where I can't see it.

Maybe I should have got a better cable, but being able to change the resolution for the time being seems like it should be really simple, but I don't seem to be able to do it.

Thanks

Answer: 
Try clicking on 'Gather Windows' button in the bottom right corner. It will bring the resolution choices onto the built-in screen. Then you can choose one that suits. If you hold down option while clicking the 'scaled' button, it will bring up all available resolutions.

I have a third party screen, but Mac picked it up as an Apple screen with unusual resolutions and all I could see were grey streaks. Once I gathered the windows and changed to a suitable resolution it worked fine.
In System/Preferences/Monitor, under the Monitor tab, there's a button for gathering all Monitor windows (there's one displayed for each connected monitor) on the current monitor; then you can choose the other monitor's resolution ("resized", eventually) using the current monitor. If the needed resolution is not available, try googling for SwitchResX, SetResX (both shareware) or scrutil (command line tool) or ChangeResolution (script). Hope this helps.