improving Binding with generics and visibility