How can I check in C# if button.Click event has any handlers associated? If (button.Click != null) throws compile error.
You can't. Events just expose "add a handler" and "remove a handler" - that's all. (In fact in the CLR you can also have metadata to associate a method with "fire the event" but the C# compiler never generates that.) Some event publishers may offer additional means to check whether or not there are any subscribers (or indeed let you see those subscribers) but it's not part of the event pattern itself.
See my article about events for more information, or look at the events tag (which I'm about to add to this question).