Esempio n. 1
0
        public static T Bind <T, TViewModel>(this T element,
                                             MvxInlineBindingTarget <TViewModel> target,
                                             string targetPath,
                                             string sourcePath,
                                             IMvxValueConverter converter = null,
                                             object converterParameter    = null,
                                             object fallbackValue         = null,
                                             MvxBindingMode mode          = MvxBindingMode.Default)
        {
            if (string.IsNullOrEmpty(targetPath))
            {
                targetPath = MvxBindingSingletonCache.Instance.DefaultBindingNameLookup.DefaultFor(typeof(T));
            }

            var bindingDescription = new MvxBindingDescription(
                targetPath,
                sourcePath,
                converter,
                converterParameter,
                fallbackValue,
                mode);

            target.BindingContextOwner.AddBinding(element, bindingDescription);

            return(element);
        }
Esempio n. 2
0
 public static T Bind <T, TViewModel>(this T element,
                                      MvxInlineBindingTarget <TViewModel> target,
                                      Expression <Func <TViewModel, object> > sourcePropertyPath,
                                      IMvxValueConverter converter,
                                      object converterParameter = null,
                                      object fallbackValue      = null,
                                      MvxBindingMode mode       = MvxBindingMode.Default)
 {
     return(element.Bind(target, null, sourcePropertyPath, converter, converterParameter, fallbackValue, mode));
 }
Esempio n. 3
0
        public static T Bind <T, TViewModel>(this T element,
                                             MvxInlineBindingTarget <TViewModel> target,
                                             Expression <Func <T, object> > targetPropertyPath,
                                             Expression <Func <TViewModel, object> > sourcePropertyPath,
                                             string converterName      = null,
                                             object converterParameter = null,
                                             object fallbackValue      = null,
                                             MvxBindingMode mode       = MvxBindingMode.Default)
        {
            var converter = MvxBindingSingletonCache.Instance.ValueConverterLookup.Find(converterName);

            return(element.Bind(target, targetPropertyPath, sourcePropertyPath, converter, converterParameter,
                                fallbackValue, mode));
        }
Esempio n. 4
0
        public static T Bind <T, TViewModel>(this T element,
                                             MvxInlineBindingTarget <TViewModel> target,
                                             Expression <Func <T, object> > targetPropertyPath,
                                             Expression <Func <TViewModel, object> > sourcePropertyPath,
                                             IMvxValueConverter converter,
                                             object converterParameter = null,
                                             object fallbackValue      = null,
                                             MvxBindingMode mode       = MvxBindingMode.Default)
        {
            var parser     = MvxBindingSingletonCache.Instance.PropertyExpressionParser;
            var sourcePath = parser.Parse(sourcePropertyPath).Print();
            var targetPath = targetPropertyPath == null ? null : parser.Parse(targetPropertyPath).Print();

            return(element.Bind(target, targetPath, sourcePath, converter, converterParameter, fallbackValue, mode));
        }
Esempio n. 5
0
 public static T Bind <T, TViewModel>(this T element, MvxInlineBindingTarget <TViewModel> target,
                                      string descriptionText)
 {
     target.BindingContextOwner.AddBindings(element, descriptionText);
     return(element);
 }