Создание веб-элемента управления для панели управления боковой панели с модальным всплывающим окном для каждого элемента - PullRequest
0 голосов
/ 03 мая 2011

Привет в основном я хочу создать элемент управления, который может добавить всплывающее окно к menuItems, который объявлен в разметке страницы.Я хотел бы, чтобы синтаксис был таким, как показано ниже:

<uc1:Sidebar id="" runat="server" enablePopup="True">
<PopUpBindings>
<PopedControlId="" BackgroundClass="" TargetItemIndex=""/>
<PopedControlId="" BackgroundClass="" TargetItemIndex=""/>
..
</PopUpBindings>
</uc1:Sidebar>

Я могу создать enablePopUp, используя поля участника на странице asmx.Как показано ниже

private bool _enablePopup;
public Boolean EnablePopup
{
    get { return _enablePopup; }
    set { _enablePopup = value; }
}

, но создается привязка, установленная как в markUp 1. Никогда раньше этого не делали.Может ли кто-то дать намеки на это.Вопрос 2: Этот пользовательский контроль создается, потому что не удалось создать modalPopup вместе с привязкой данных Repeater.Я попытался описать приведенное ниже событие повторителей ItemDatabound, но выдает исключение "Не удалось найти целевой идентификатор = = 0}"

mpcpnlNewBp.TargetControlID = e.Item.ID;//open modalpopup

1 Ответ

1 голос
/ 03 мая 2011

То, что вам нужно, это Свойства коллекции на вашем контроле - см. этот пример кода из MSDN, чтобы получить представление.

Если требуется дополнительная поддержка дизайнера, например пользовательского интерфейса для редактирования свойств, необходимо создать редактор коллекций - отметьте в этом связанном примере .

EDIT: При использовании шаблонных элементов управления, таких как повторитель, целевой элемент управления должен быть найден в правильном контексте родительского элемента управления, чего не может сделать модальное всплывающее окно. Решением является использование фиктивного (скрытого) элемента управления на странице / пользовательском элементе управления в качестве целевого элемента управления для модального всплывающего окна, а затем использование API-интерфейса Java-сценария расширителя для скрытия / отображения всплывающего окна в соответствии с потребностями (см. эту статью для API на стороне клиента).

...