updated to not rely on redraw at all, protect child views with same binding names