private static Expression ParseProperty(Expression current, ParsedExpression toReturn)
        {
            var me = (MemberExpression)current;

            toReturn.PrependProperty(me.Member.Name);
            current = me.Expression;
            return(current);
        }
        private static IParsedExpression ParseBindExtensionMethod(LambdaExpression propertyPath, object controlType)
        {
            var compiled            = propertyPath.Compile();
            var virtualPropertyName = compiled.DynamicInvoke(controlType) as string;

            var toReturn = new ParsedExpression();

            toReturn.PrependProperty(virtualPropertyName);
            return(toReturn);
        }