UpdatePanel в каждой строке списка данных - PullRequest
0 голосов
/ 12 мая 2011

Я пытаюсь обновить каждую строку DataList без необходимости PostBack всего DataList.

В основном я хочу перейти с

<DataList>
   <ItemTemplate>
      <UpdatePanel>
      </UpdatePanel>
   </ItemTemplate>
</DataList>

вместо

<UpdatePanel>
   <DataList>
      <ItemTemplate>
      </ItemTemplate>
   </DataList>
</UpdatePanel>

Это возможно или лучше - имеет ли смысл?

1 Ответ

0 голосов
/ 13 мая 2011

Да , возможно, лично я в некоторых ситуациях так делаю.

Но вы должны знать, что с UpdatePanel не идеальное решение. В качестве примера клиент отправил полный ViewState страницы. Так что выигрыш будет, но не такой большой, как вы могли бы ожидать.

Я предлагаю вам прочитать Информация об UpdatePanel раздел по этой ссылке для получения дополнительной информации.

Обновление:

Вы также должны посмотреть, как вы настраиваете свой шаблон, например: вы не можете поместить строку таблицы в панель обновления.

Не делай этого:

<asp:DataList>
   <HeaderTemplate>
      <Table>
   </HeaderTemplate>

   <ItemTemplate>
     <UpdatePanel>
         <tr>
             <td>...</td>
             <td>...</td>
         </tr>
     </UpdatePanel>
   </ItemTemplate>
   <FooterTemplate>
      </Table>
   </FooterTemplate>
</asp:DataList>

Но вы не можете сделать:

<asp:DataList>
   <HeaderTemplate>
      <Table>
   </HeaderTemplate>

   <ItemTemplate>
     <UpdatePanel>
     <tr>
         <td>
             <UpdatePanel>
                ...
             </UpdatePanel>
         </td>
     </tr>
   </ItemTemplate>
   <FooterTemplate>
      </Table>
   </FooterTemplate>
</asp:DataList>
...