Is there someway to have a part of the page that renders like a little sub-page, like components?
For example, if I have a shopping cart on all my pages?
You can create an ActionFilter that modifies the view data. That way, you can decorate every action that returns the partial with the action filter. Take a look at my post:
You are looking for subcontrollers. This implementation is the best way to do what you are talking about.
Edit: I just posted about this here: http://mhinze.com/subcontrollers-in-aspnet-mvc/