I wish to create something like this:
I ended up finding this out. One of the overloads uses a dictionary for the html attributes rather than an object. I use this dictionary to add the required elements.
@Html.DropDownListFor(m => m.itemId, Model.itemList, new Dictionary()
{
{ "class", "form-control" },
{ "required", String.Empty },
{ "maxlength", "4" },
{ "minlength", "2" },
{ "[(ngModel)]", "dataForm.itemId" }
})