Hola,
Cada Item de un TreeNode cuenta con el método "Expand", el cual funciona más o menos así:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
var
nodo: TTreeNode;
begin
nodo := TreeView1.Selected;
nodo.Expand(true);
end;
El parámetro (true, en este caso) sirve para que expanda completamente el Nodo o solamente un primer nivel del mismo. Nota que los Nodos también cuentan con el método "Collapse", el cual sirve para justamente lo contrario y hace uso del mismo parámetro, el cual tiene la misma utilidad que "Expand".
Respecto de la segunda cuestión (aunque conviene hacer en hilos distintos preguntas distintas) te diré que aunque lo he intentado grosso modo no doy con la tecla: seguramente el pandero lo cogerá alguien que lo sepa tañer mejor.