find child widgets in a better way - move event binding into bind not refresh