I don't understand why you can't call the event after you have populated the text box. Does it fill the textbox one item at a time? If that's the case, perhaps you could use a timeout if it is client-side javascript. You'd basically refresh a timeout that you keep resetting every time a character is input into the textbox, then whenever the timeout runs out, there hasn't been any refreshes, so the textbox is probably filled.
What side is populating the textbox server or client? Are there other form items?