public bool ValueChanged <TVal>(Expression <Func <TObj, TVal> > propertyLambda, out IAmValueChangedEventMessage <TObj, TVal> cmessage) => ValueChanged(GetPropNameFromLambda(propertyLambda), out cmessage);
public bool ValueChanged <TVal>(string propertyName, out IAmValueChangedEventMessage <TObj, TVal> cmessage) { cmessage = message as IAmValueChangedEventMessage <TObj, TVal>; return(ObjectIsSuitable(message.Object) && cmessage?.Binding.PropertyName == propertyName); }