Select mesh faces or edges

Hi,
in our plugin we allow the user to set certain user data flags per edge or face of CRhinoMeshObjects. We use CRhinoGetObject with a geometry filter of CRhinoGetObject::meshface_object or CRhinoGetObject::meshedge_object, which works fine in principle, but one problem persists:
We don’t manage to preselect those edges or faces which were already flagged before the user calls the command to change the flags. We tried to do this preselection using CRhinoMeshObject::SelectSubObject before using CRhinoGetObject, but that was unsuccessful. Any hints?

A combination of

CRhinoGetObject go;
go.EnablePreSelect(true); 
go.EnableSubObjectSelect();

does not work?

Is the problem that the sub objects don’t pre-select, or that CRhinoGetObject de-selects successfully pre-selected sub objects?

This way it works, many thanks!