made IControl:: SetValueFromUserInput() virtual