public object Bind(BindingContext context) { IValueProvider provider = new DictionaryValueProvider(context.Parameters); // Rewrite the provided context to ensure all the parameters // provided by user is set correctly. BindingContext inner = new BindingContext(context, context.ModelType, context.ModelName, provider, context.ModelState); ValueProviderResult value; if (inner.TryGetValue(out value)) return value.Value; return null; }