Estoy intentando escribir una extensión de DropDownListFor
:Cómo agregar htmlAttributes adicionales en la extensión de DropDownListFor
public static MvcHtmlString DropDownListFor<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, IEnumerable<SelectListItem> selectList, object htmlAttributes, bool enabled)
{
return htmlHelper.DropDownListFor(expression, selectList, null /* optionLabel */, HtmlHelper.AnonymousObjectToHtmlAttributes(htmlAttributes));
}
Lo que queremos lograr es si está habilitado es falso no cambia, pero si está habilitado es cierto que quiero agregue @disabled="disabled"
a los atributos html antes de darlos a AnonymousObjectToHtmlAttributes
.
¿Alguna idea sobre cómo hacer esto?
No es necesario escribir un ayudante, sólo tiene que utilizar la sobrecarga que acepta htmlAttributes como sugiere Dmitry. – RickAndMSFT
@ Rick.Anderson-at-Microsoft.com No estaría de acuerdo. Primero, la pregunta era sobre agregar atributos, no la posibilidad de usar otros métodos. Y segundo, crear ayuda en este caso es mucho más legible y luego verificar la condición habilitada y luego llamar a la sobrecarga de método correcto desde la vista – archil