Note that this has limitations. The extent of the xclip needs to be larger than the maximum extent of your dynamic block, and XCLIPFRAME needs to be set to 0. Also even with the XCLIPFRAME off, it still selects in the drawing. So for example the same principle is applied in the attached simplified block, and the dynamic length and depth are set to minimum, but if I cross a stretch polygon over the invisible Xclip frame it grabs the block at the maximum limits. Hence a bit quick and dirty. But way faster than double lookup.
Ideal situation would be for Autodesk to modify the visibility states process to have more than one visibility parameter, but NOT allow the user to asign entities to more than one visibility parameter. That way you could have visibility sets for more than one category. For instance, in the attached block it would be nice to have a visibility parameter for the hatch, and another one for the shapes, so they could be switched independantly.
Also left the flip grips on in this block, but my preference is to switch off and edit in properties only, since they move around.