That's not entirely true. You can post input events to controls to trigger the functionality exactly the same way a user would do it (e.g. send mouse click to widget A, then mouse click to B, then strike "abc" on the keyboard, etc.).
I agree. Thanks for the hints