Управление сервером Создание дочерних элементов - PullRequest
0 голосов
/ 15 апреля 2011

Я хочу знать, как вы создаете дочерние элементы для серверного элемента управления, и есть ли какая-либо документация или руководства по этому вопросу, например,

<myMenu:Menu id="Menu1" runat="server">
    <myMenu:MenuItem Text="Some Text" Link="www.msdn.com"> // <--
    // ^-- Theis part how do you create child controls collection
    </myMenu:MenuItem>
</myMenu:Menu>


namespace ControlsBook2Lib.Ch08
{
[DefaultProperty("Text")]
[ToolboxData("<{0}:Menu runat=server></{0}:Menu>")]
public class Menu : WebControl
{
    protected override void RenderChildren(HtmlTextWriter writer)
    {
        base.RenderChildren(writer);
    }
}

[ToolboxData("<{0}:MenuItem runat=server></{0}:MneuItem>")] <-- this part is wrong I know
public class MenuItem : WebControl
{
    protected override void Render(HtmlTextWriter writer)
    {
        base.Render(writer);
    }
}
}  

1 Ответ

1 голос
/ 15 апреля 2011

Вам необходимо предоставить свойство в родительском элементе управления, которое содержит коллекцию дочерних элементов - обратите внимание, что дочерний тип не обязательно должен быть элементом управления (это может быть обычный класс).

См. эту статью MSDN , в которой описывается, как разработать такой серверный элемент управления - см. Пример , в котором примерный элемент управления содержит коллекцию класса контактов.У вас также есть пример разработки редактора коллекций, обеспечивающего пользовательский интерфейс для редактирования того же.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...