панель частичного обновления рендеринга модального расширителя всплывающих окон закрыта

#c# #asp.net #asp.net-ajax #ajaxcontroltoolkit #modalpopupextender

#c# #asp.net #asp.net-ajax #ajaxcontroltoolkit #modalpopupextender

Вопрос:

В моей форме у меня есть listview и a panel , которые используются как всплывающее окно внутри updatepanel .

Я динамически создаю всплывающее окно с помощью modalpopupextender on listview ltemcommand .

вот мой код для открытия всплывающего окна

 protected void LstCreativeBin_ItemCommand(object sender, ListViewCommandEventArgs e)
    {
        switch (e.CommandName)
        {
            case "UploadFile":
                ListViewDataItem currentItem = (ListViewDataItem)e.Item;
                DataKey currentDataKey = LstCreativeBin.DataKeys[currentItem.DisplayIndex];
                int contestid = Convert.ToInt32(currentDataKey["participantSlno"]);
                IframeEdit.Attributes.Add("src", "Uploadfile.aspx?id="   Convert.ToString(contestid));
                ModalPopupExtender1.Show();
                break;
        }
    }
  

Моя проблема в том, что страница обновляется, даже если она находится внутри updatepanel . Я добавил LstCreativeBin_ItemCommand к асинхронному триггеру в обновлении.

Что здесь нужно, так это :

  1. Открытие всплывающего окна асинхронно.
  2. Обновление панели обновления при закрытии всплывающего окна.

Ответ №1:

как насчет открытия modalpopupextender без перехода к code-behind… если вы откроете ее с помощью динамических элементов управления, вы можете указать modalpopupextender на TargetControlID фиктивный элемент, подобный скрытому элементу управления, и вы можете добавить к каждому элементу listview onclick на hidden_control.click() или просто $find(modal).show()