У меня есть пользовательский элемент управления, который содержит свойство следующего определения:
[PersistenceMode(PersistenceMode.InnerProperty)]
public ITemplate Template {
get { return template; }
set { template = value; }
}
Элемент управления переопределяет CreateChildControls () и добавляет несколько HtmlGenericControls и элемент управления asp: Panel.
Фактическая фактическая реализация элемента управления выглядит примерно так:
<user:Frame runat="server">
<Template>
<asp:Literal runat="server" ID="SomeControl" Text="SomeValue" />
</Template>
</user:Frame>
Хотя страница отображается так, как задумано, она имеет ряд последствий различной степени тяжести, включая:
- На элементы управления, содержащиеся в шаблоне, нельзя ссылаться напрямую, и требуется FindControl. Это хорошо.
- Мне не удалось использовать на них средства проверки.
Есть ли лучший способ создать мой пользовательский элемент управления? Или, возможно, просто способ заставить валидацию работать?