reflect to mvvm