Bueno, de hecho cargar en memoria es como toca en cliente/servidor 3 niveles...
Por otro lado, por defecto tiene ese comportamiento pero se puede hacer una carga por tandas de registros, por codigo, etc...
En esencia, si el Grid de DevExpress no hace lo que deseas, no lo hace nadie...
Aunque en tu caso, supongo que seria mejor el
http://www.delphi-gems.com/VirtualTreeview/VT.php mas que nada porque es mas natural por ser en forma de arbol...
Pero el grid de devexpress da la talla y estoy casi seguro viene con un ejemplo de lo que buscas.