ViewState / IStateManager
System.Web.UI.IStateManager has methods called TrackViewState, IsTrackingViewState, LoadViewState, SaveViewState
System.Web.UI.Control has methods TrackViewState, IsTrackingViewState, LoadViewState, SaveViewState
And yet Control doesn't implement IStateManager. Why not?
On Control, TrackViewState is protected. This means that when dynamically constructing a control tree, the only way to enable ViewState tracking is to add the control to its parent . This makes it more difficult to create and initialize a control in a nice separate helper function.
This annoys me.