I've been debugging this issue (or rather, attempting to debug this issue) wherein I have some ASP.NET controls that perform postbacks. These controls are of my own make and are UserControls (.ascx). Ages ago I thought I'd be clever and set the the EnableViewState property of the page to false because the information I'm presenting rarely (if ever) changes. I query it once and cache the data and redisplay it on round trips to the server - not a big deal.
...until I decide to put a DataList on the control and want to capture the ItemCommand event on items within the list. It turns out that unless the Page has EnableViewState set to true, the control events don't get wired up properly. Now I've seen this behavior before and I've known about these circumstances from eons ago, but it's funny the little things you forget in an attempt to be clever.