because oncomplete event fired after ajax request complete. no request - no event ;) And b.t.w. why you use so strange construction.. Try maybe ajaxSubmitSelection true and specify selection listener on the node.
I tried ajaxSubmitSelection true, but in combination with toggleOnClick=true there is some strange behavior too........ I use this combination, because I'd like to rerender my whole portlet after clicking on a link in the tree...this can't be done via a node selection listener, as far as I know.