Я создаю форму захвата «на лету» на основе набора метаданных, хранящихся в схеме типа EAV.Свойства управления динамическими формами
Моя проблема заключается в загрузке данных обратно в элемент управления и, в частности, в combobox winforms.
Также с использованием Entity Framework для данных, привязанных к элементу управления.
Проверка контроля есть, иначе создать. для каждого отображаемого свойства задают свои значения. т. Е. Источник данных, DisplayMember, ValueMember и т. Д.
Значение Load существует для свойства SelectedValue? это где не удается?
При осмотре объекта кажется, что ни одно из предыдущих значений, включая источник данных, еще не загружено? Но combobox действительно показывает значения после рендеринга?
Ниже приведены некоторые фрагменты кода.
Type oType = Type.GetType("System.Windows.Forms.ComboBox");
if (oControlObject == null)
{
oControlObject = (Control)Activator.CreateInstance(oType);
oControlObject.Tag = item;
oControlObject.CreateControl();
}
...Loop to set Datasource, DisplayMember & ValueMember ...
if (property.IsReadProperty.Value && value != null)
{
PropertyInfo propSet = oType.GetProperty(property.PropertyName); //PropertyName here is "SelectedValue"
propSet.SetValue(oControlObject, value.Value, null);
}
Ну, я бы солгал, если бы утверждал, что понял, что вы имели в виду, но как насчет кастинга в ComboBox вместо контроля! Я не знаю, я могу быть совершенно неправ. – Galilyou
В этот момент я взаимодействую с объектом с использованием отражения, поэтому отливка не должна иметь значения. Но хорошее предложение. Попытайтесь все равно, не знаете? –