Я создал 4 пользовательских элемента управления, которые более или менее имеют одинаковые свойства.Вот пример источника для пользовательского элемента управления:
<div>
<asp:Label runat="server" ID="LabelPrompt"></asp:Label>
<telerik:RadComboBox runat="server" ID="ComboBoxInput"></telerik:RadComboBox>
</div>
Когда страница загружается, мне нужно изменить значение LabelPrompt.Вот что я делаю:
Control p = LoadControl("~/Parameters/TextBoxParameterUserControl.ascx");
p.GetType().GetProperty("LabelPrompt").SetValue(p, "AAAA", null);
PanelParametersList.Controls.Add(p);
Ранее я пытался использовать приведенный ниже код для добавления пользовательского элемента управления, но он не работал.Другой поток предложил использовать приведенный выше код, который работает (с точки зрения добавления элемента управления в представление).
PanelParametersList.Controls.Add(new TextBoxParameterUserControl());
В любом случае, компилятор жалуется на следующую строку:
p.GetType().GetProperty("LabelPrompt").SetValue(p, "AAAA", null);
Но это не работает, он говорит: «Объект не установлен на ссылку» .....Что я делаю не так?
ps Я знаю, что супер / подклассификация возможна, но это не то, что мне нужно!