Thanks for your reply!
That's an easy solution*, but is there not a function for that? I expected a more OOP-like solution to the problem, so it's possible to re-use code. It would be nice if I can use the 'standard' product list view (with sorting, paging, etc.).
I don't want to use the layered navigation block, because we want to make a custom wizard. The product selection is not that easy (it's a very complex product), so we want to make it as easy as possible.
* It's better to use the controller to select the products, isn't it?