Единственный «одобренный» способ иметь динамический элемент управления (я думаю, что поле со списком описывает, что вы пытаетесь достичь) - это использовать веб-ресурс Silverlight / HTML, который может взаимодействовать с данными формы через JavaScript.
Мы использовали метод, аналогичный вашему, для создания списков выбора с множественным выбором (преобразование текстовых полей в список флажков и сохранение результата в формате CSV), однако мы столкнулись с проблемой, которая может возникнуть быть в курсе.
Чтобы поставщик программного обеспечения мог получить свой продукт через MS CRM Marketplace , продукт должен пройти тест программного обеспечения ISV ( .doc доступен здесь ). Изменение DOM не разрешено этим тестом:
Непосредственное изменение объектной модели документа (DOM) пользовательского интерфейса CRM
компоненты могут дестабилизировать приложение и / или полностью его сломать.
Как выполнить
• Не обращайтесь напрямую и не изменяйте объектную модель документа (DOM).
любого компонента / элемента управления CRM.
Итак, мы обнаружили, что нам пришлось пересмотреть наш код, чтобы поменять местами JavaScript DOM в пользу более мощных, но в конечном итоге более поддерживаемых элементов управления Silverlight.
Если у вас нет намерения использовать рынок, это не должно повлиять на вас, кроме как знать, что ваши изменения могут не поддерживаться в будущих обновлениях CRM.