2010-02-27 5 views
0

У меня есть две обновляемые панели на той же странице. Во-первых, есть источник данных, в то время как в другом есть модальное всплывающее окно. В модальном всплывающем окне у меня есть кнопка «Сохранить», которая обновляет данные datalist. Фактически кнопка «Сохранить» работает правильно, а данные обновляются, но для просмотра обновленных данных в datalist я должен сделать обратную передачу, пока я бы нажал кнопку «Сохранить», асинхронный ответ и datalist покажу мне обновленные данные после нажатия кнопки «Сохранить».Обновление Datalist в UpdatePanel

Я делаю это в UpdatePanel из modalpopup:

<Triggers> 
     <asp:AsyncPostBackTrigger ControlID="btnSave" EventName="Click" /> 
</Triggers> 

P.S Извините за мой английский!

ответ

0

Сделайте то же самое для UpdatePanel вы хотите обновить (который содержит DataList):

<Triggers> 
    <asp:AsyncPostBackTrigger ControlID="btnSave" EventName="Click" /> 
</Triggers> 

С ребенком в UpdatePanel не вызывая постбэк, он не знает, чтобы обновить, явно указывая на то, что при нажатии btnSave он должен это сделать, чтобы решить вашу проблему.

+0

Спасибо, сейчас работает, но у меня есть еще одна вещь, чтобы спросить вас. В моем модальном всплывающем окне у меня есть текстовое поле, которое позволяет пользователю обновлять данные, но когда я вставляю значение в текстовое поле, а затем нажмите кнопку «Сохранить» в datalist, я вижу, что мои данные повторяются снова и снова с большей запятой. Например, если я вставлю Pippo, то в datalist я вижу: Pippo, Pippo Почему? – Ivan90

+0

@ Ivan90 - Что вы используете для модального? Я помню, как я видел эту проблему с определенным типом модального времени назад, вероятно, то же самое. –

+0

Mhh ... Я использую ModalPopupExtender. Я не могу решить эту проблему. Вероятно, проблема заключается в свойствах updatemode и childrenastriggers из двух панелей обновления! – Ivan90

0

В вас btnSave обработчик событий вы можете заставить DataList панель обновлять так:

public void btnSave_Click(object sender, EventArgs e) 
{ 
    // Save logic 
    pnlDataList.Update(); 
}