powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вопрос по Repeater
22 сообщений из 22, страница 1 из 1
Вопрос по Repeater
    #37600516
masha2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте. Такая ситуация: есть страница с MasterPage, на ней

<asp:Content ID="" ContentPlaceHolderID="MainContent" runat="server">
<asp:UpdatePanel ID="UpdatePanel1" runat="Server" >
<ContentTemplate>

<myUC:MyUserControl ID="" runat="Server" AutoPostBack="true">
</myUC:MyUserControl>

</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>

MyUserControl в свою очередь содержит Repeater:

<div id="moorings_dialog">
<asp:Repeater id="mooringsRepeater" runat="server" >
<HeaderTemplate>
<table id="moorings_panels">
</HeaderTemplate>
<ItemTemplate>
<tr> /* Эта часть взята в качестве простого примера из msdn */
<td> <%# DataBinder.Eval(Container.DataItem, "Name") %> </td>
<td> <%# DataBinder.Eval(Container.DataItem, "Ticker") %> </td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</div>

Все работает, отображается.
Далее странность, пытаюсь на клиенте просмотреть сгенерированный html-код, а этого куска там вообще нет,
т.е. вижу только:

<div id="moorings_dialog">
/* А ЗДЕСЬ ПУСТО */
</div>

Почему так?
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37600585
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А привязка к данным asp:Repeater где ?

Может вместо asp:Repeater , ListView использовать ?
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607523
masha2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Выяснила, что сгенерированный html-код не обновляется после postback-события у UpdatePanel - а что это за явление такое, понять не могу, кто-нибудь может объяснить или где почитать?
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607634
brainproof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть такое?
mooringsRepeater.DataSource= взять откуда то
mooringsRepeater.DataBind();

во общем покажи код привязки данных к репитару
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607747
masha2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привязка данных простенькая из примера msdn:

ArrayList values = new ArrayList();

values.Add(new PositionData("Microsoft", "Msft"));
values.Add(new PositionData("Intel", "Intc"));
values.Add(new PositionData("Dell", "Dell"));

Repeater1.DataSource = values;
Repeater1.DataBind();

Т.е., например, если в UpdatePanel поместить кнопочку submit, а этот код инициализации репитера поместить в
if (IsPostBack)
{
...
Repeater1.DataBind();
},
то на странице таблица появится, но вот в коде html ее не будет видно, может она где-то во viewstate зашивается, я просто этого механизма пока понять не могу.
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607777
brainproof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я правильно понимаю что у вас Repeater1.DataBind() по нажатию кнопки?
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607804
masha2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
brainproofя правильно понимаю что у вас Repeater1.DataBind() по нажатию кнопки?

Да, т.е. при postback. Но в html-коде генерится только начальная инициализация. Хотя сама страница работает нормально.
Вот например у меня еще есть страница, где в UpdatePanel размещен GridView с пэйджингом. Первая загрузка идет с первой страницы и в html-разметке я найду <table>... с соответствующими данными. Потом листаю на 2ю страницу, данные меняются, а в html-разметке по-прежнему видны данные из первой страницы. Почему так?
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607815
masha2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В книге в разделе Работа с UpdatePanel я читаю:

... то на этапе Render жизненного цикла страницы, произойдет генерация HTML-разметки только для содержимого компонента и эта разметка будет отправлена клиенту. Клиентская часть ASP.NET AJAX обработает полученный код и изменить разметку внутри div'а, соответствующего UpdatePanel.

Но на практике я как-то этого не вижу...
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607820
brainproof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это же очевидно.IsPostBack это флаг
читаем http://msdn.microsoft.com/ru-ru/library/system.web.ui.page.ispostback.aspx
убираем IsPostBack и будет счастье. советую почитать про модель событий в асп нет так как вижу что нет четкого понимания.
по коду: у тебя не заходить изза флага в databind так как при инициализации страницы IsPostBack = false
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607832
masha2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так мне так и надо, чтобы только при постбэке инициализировался, а не сразу. Это же просто упрощенный пример. Все работает (сама страница в браузере отображается корректно). Вопрос в том, почему после постбэка я вижу на странице табличку с данными, все как надо, НО, зайдя в html-разметку, в div-е (который updatepanel) ПУСТО????
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607837
brainproof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как смотрите html-разметку? через правую кнопку посмотреть исходный код или фаербаг?
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607840
masha2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
brainproof,

В IE - через правую кнопку посмотреть исходный код,
в opera - Ctrl-F3
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607865
brainproof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дело в том что браузер получил хтмл страницу без вашего репитера ..вернее с ним но он пуст...а остальное догружается у вас UpdatePanel и правой кнопкой он покажет то что получил вначале..через фаербаг увидете или через f12 в ие
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607877
masha2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
brainproof,

угу, правда, в отладчике все изменения видны. Ну, т.е. это стандартная ситуация? Пусть будет так...
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607883
brainproof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да эт нормально. браузер же не знал изначально про репитор. я сам лично стараюсь отказываться от них по возможности..тяжелые они очень + вызывают все события страницы на сервере - это так отступление)
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37607900
masha2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
brainproof,

Да не в репиторе дело, как я понимаю, а в updatepanel. Любые изменения в updatepanel после постбэка уже в разметке не видны. Я же про GridView писала выше. Ну спасибо, а то я как то отладчиком не пользовалась пока, достаточно было видеть html-разметку.
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37608131
Zoria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
brainproofда эт нормально. браузер же не знал изначально про репитор. я сам лично стараюсь отказываться от них по возможности..тяжелые они очень + вызывают все события страницы на сервере - это так отступление)
какие интересные сведения...
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37608659
brainproof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ммм эт что троллинг?
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37608708
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
brainproofммм эт что троллинг?
Нет. Просто, Вы глупость написали. :)
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37608712
brainproof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поясните в чем глупости? в том что updatepanel тяжелая и громоздкая вещь? или то что он вызывает все события page?
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37608989
Zoria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
brainproofвозможности.. тяжелые они очень + вызывают все события страницы на сервере
вот это вот вызывает сомнения, но возможно. вы объясните, чем, по-вашему мнению, тяжел репитор и как он вызывает все события страницы на сервере.
...
Рейтинг: 0 / 0
Вопрос по Repeater
    #37609001
brainproof
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
блин я пропустил слово там updatepanel ... слова относились к updatepanel. теперь понял косяк.я уж думал моя религия не верна.пардон
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вопрос по Repeater
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]