public static MvcHtmlString TextControlFor <TModel, TValue>(this HtmlHelper <TModel> html, Expression <Func <TModel, TValue> > expression, IDictionary <string, object> inputHtmlAttributes)
        {
            var metaData      = ModelMetadata.FromLambdaExpression(expression, html.ViewData);
            var htmlFieldName = ExpressionHelper.GetExpressionText(expression);

            return(ControlGroupExtension.Helper(
                       html,
                       metaData,
                       htmlFieldName,
                       InputExtensions.TextBoxFor(html, expression, inputHtmlAttributes)));
        }
示例#2
0
        private static MvcHtmlString TextAreaControlHelper <TModel, TValue>(HtmlHelper <TModel> html, Expression <Func <TModel, TValue> > expression, MvcHtmlString inputHtml)
        {
            var metaData      = ModelMetadata.FromLambdaExpression(expression, html.ViewData);
            var htmlFieldName = ExpressionHelper.GetExpressionText(expression);

            return
                (ControlGroupExtension.Helper(
                     html,
                     metaData,
                     htmlFieldName,
                     inputHtml));
        }
        public static MvcHtmlString DropDownListControlFor <TModel, TValue>(this HtmlHelper <TModel> html, Expression <Func <TModel, TValue> > expression, IEnumerable <SelectListItem> selectList, object inputHtmlAttributes)
        {
            var metaData      = ModelMetadata.FromLambdaExpression(expression, html.ViewData);
            var htmlFieldName = ExpressionHelper.GetExpressionText(expression);

            return(ControlGroupExtension.Helper(
                       html,
                       metaData,
                       htmlFieldName,
                       SelectExtensions.DropDownListFor(html, expression, selectList, inputHtmlAttributes)
                       ));
        }
示例#4
0
        private static MvcHtmlString CheckBoxControlHelper <TModel>(HtmlHelper <TModel> html, Expression <Func <TModel, bool> > expression, ModelMetadata metadata, MvcHtmlString input)
        {
            var metaData = ModelMetadata.FromLambdaExpression <TModel, bool>(expression, html.ViewData);

            var htmlFieldName = ExpressionHelper.GetExpressionText(expression);

            // create label container
            TagBuilder label = new TagBuilder("label");

            label.AddCssClass("checkbox");

            // compose control
            label.InnerHtml = input.ToString();

            return(ControlGroupExtension.Helper(
                       html,
                       metaData,
                       htmlFieldName,
                       new MvcHtmlString(label.ToString())));
        }