Pretty much, yes, page specific data should not be stored in Session, since that can cause issues if multiple tabs/windows are open.
Using ViewState directly is a good alternative. Or using HiddenFields will work fine if you need to access the values in them from the client side. That's really the decision point between using ViewState and HiddenFields.