You can always add an item at a particular position. That should allow implementing hide/show for menus and combo/listboxes pretty easily using standard functionality.
Yes, that's what I did, but it means we have to keep track of the hidden items separately, which we weren't doing before.