К сожалению, @Html.DropDownListFor()
ведет себя несколько иначе, чем другие помощники при рендеринге элементов управления в цикле. Об этом ранее сообщалось как о проблеме с CodePlex (не уверен, что ее ошибка или просто ограничение)
. Это 2 варианта для решения этой проблемы, чтобы обеспечить выбор правильной опции на основе свойства модели
Вариант 1 (с использованием EditorTemplate
)
Создайте пользовательский EditorTemplate
для типа в коллекции. Создайте парциальное значение в /Views/Shared/EditorTemplates/AggregationLevelConfiguration.cshtml
(обратите внимание, что имя должно соответствовать имени типа
@model yourAssembly.AggregationLevelConfiguration
@Html.DropDownListFor(m => m.HelperCodeType, (SelectList)ViewData["CodeTypeItems"])
.... // other properties of AggregationLevelConfiguration
, а затем в главном представлении передать SelectList
в EditorTemplate
как additionalViewData
@using (Html.BeginForm())
{
...
@Html.EditorFor(m => m.Configurations , new { CodeTypeItems = Model.CodeTypeItems })
...
Вариант 2 (сгенерируйте новую SelectList
на каждой итерации и установите selectedValue
)
В этом параметре ваше свойство CodeTypeItems
должно быть IEnumerable<GenericIdNameType>
, а не SelectList
(или просто сделать codeTypes
общедоступным свойством). Затем в главном представлении
@Html.DropDownListFor(m => m.Configurations[0].HelperCodeType, new SelectList(Model.CodeTypeItems, "Id", "Name", Model.Configurations[0].HelperCodeType)
Сторона примечания: нет необходимости использовать new { id = "Configurations[0].HelperCodeType"
- метод DropDownListFor()
уже сгенерированный атрибут id
Я использовал Средства управления Криптоном ToolKit больше 3 лет с Visual Studio 2005 и 2008 в.NET 2.0, 3.0, 3.5, и 3,5 SP1. Я только использовал свободный ToolKit а не средства управления Лентой или Вкладкой. Я использовал его только в C#.
Профессионалы:
Недостатки:
Вот является быстрый образец нашего диалогового окна опций для "Строки поиска MuvEnum" использованием Криптона Chrome. Было супер легко создать. Заметьте гладкость шрифтов.
Я не могу рекомендовать Средства управления Криптоном достаточно.
John Rennemeyer
Я использовал бесплатные средства управления в различных маленьких внутренних проектах для работы в течение нескольких лет. Я запустил после его блога, как он запустил как MicroISV от упоминания на блоге MicroISV. Таким образом, я был через многие improvments, он сделал. Средства управления, которые он делает, являются горным телом (по крайней мере, в моем использовании их), и он действительно слушает то, что его пользователи хотят в функциях и других средствах управления.
Я Настоятельно рекомендую средства управления!
Я использовал полный комплект в течение прошлого с половиной года. Я был очень доволен результатами. Они просты в использовании, и я не столкнулся ни с какими проблемами, которые я не мог устранить сам (я купил версию исходного кода).
Определенно рекомендуем.