Just some inconsistencies in pre-3.0 nonprofessional version...
Create a checkbox (I know it's going away, but still) and the EventReceiver is empty.
Create a new script object for the checkbox, add OnActivate (default function name) and it works. It's receiving the event by default.
Create a UIInput (more relevant) and the EventReceiver is empty at default as well.
Create a new script object for the UIInput, add OnSubmit (default function name) and it works. It's receiving the event by default.
Create a UISlider, and EventReceiver once again is empty by default.
Create a new script object for the UISlider, add OnSliderChange(float val) (default function name) and it does not work. After looking at the UISlider code, I saw it was looking for an EventReceiver object and would not work otherwise. Once I added the gameobject of itself to the EventReceiver, it then started working.
I believe I read the 3.0 version of NGUI was changing the Event system in some manner, and it this doesn't really matter in the future that's cool. It was just very frustrating when other NGUI objects behaved in one way, so I didn't think the UISlider would behave any differently.
Thanks