Проблема дизайнера с CompositeDataBoundControl - PullRequest
1 голос
/ 20 июня 2010

У меня есть собственный класс:

SimpleTemplatedControl : CompositeDataBoundControl

    private ITemplate _itemTemplate;
    [PersistenceMode(PersistenceMode.InnerProperty),
     TemplateContainer(typeof(SimpleItem)),
    ]
    public ITemplate ItemTemplate
    {
        get { return _itemTemplate; }// get
        set { _itemTemplate = value; }// set
    }   

    protected override int CreateChildControls(
        System.Collections.IEnumerable dataSource, 
        bool dataBinding)
    {
        //
    }

Когда я помещаю это в веб-форму, я получаю такой смарт-тег, в котором я могу выбрать Элемент управления DataSource .Довольно удобно.Однако, если я добавлю этот атрибут в этот класс:

[Designer(typeof(SimpleDesigner))]

, я больше этого не увижу, а вместо этого - смарт-тег для заполнения моего шаблона (также удобно).

Iхотелось бы, чтобы обе опции были доступны из одного и того же смарт-тега, как и в случае с элементом управления GridView.Как это сделать?

1 Ответ

1 голос
/ 20 июня 2010

Какой тип конструктора вы используете?Обычно это будет ControlDesigner , но для CompositeDataBoundControl вы должны использовать класс DataBoundControlDesigner для наследования вашего конструктора от.

Grz, Kris.

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