Certainly C# and XNA require Visual Studio (or C# Express Edition).
C++ can be developed on any platform; anything from vi/emacs (or any text editor) and the console on Linux, or Visual Studio handles C++ quite nicely on Windows systems, and then other IDEs such as Code::Blocks and Dev-Cpp are also commonly used on multiple platforms. There are a couple IDEs for Linux, one of which is KDevelop, and those are also used.
For Java, Eclipse and NetBeans are the top IDEs, but again it can be written in any text editor and compiled via the command-line app "javac".
DirectX and OpenGL do not dictate the IDE, they are just graphics layers on top of the language of your choice. Of course, DirectX basically needs Windows unless you're crazy enough to try testing in WINE or a virtual machine, but OpenGL can be developed wherever you want.
I personally develop in Java on Ubuntu Linux, and Eclipse is my favorite IDE by far. On Windows, I love Visual Studio for C++ and C#/XNA.