powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вопрос по data-binding
9 сообщений из 9, страница 1 из 1
Вопрос по data-binding
    #33872429
Vadimmer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть GridView. Он привязан к ObjectDataSource. После этого в разметке стоит следующее выражение:


<% if (gridView.Rows.Count != 0) { %>
    <asp:HyperLink .... />
    <asp:HyperLink .... />
<% } %>

Как ни странно, это работает правильно! То есть ссылки отображаются, когда в источнике данных есть записи, и не отображаются, когда нет записей. Я не понимаю, почему это работает. Ведь, как я думаю, стадия биндинга происходит после стадии выполнения серверных блоков (<% ... %>), то есть gridView.Rows.Count всегда равно 0!
...
Рейтинг: 0 / 0
Вопрос по data-binding
    #33872494
RustM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Vadimmer, Вы писали:

V>Есть GridView. Он привязан к ObjectDataSource. После этого в разметке стоит следующее выражение:

V>
V><% if (gridView.Rows.Count != 0) { %>
V>    <asp:HyperLink .... />
V>    <asp:HyperLink .... />
V><% } %>
V>

V>Как ни странно, это работает правильно! То есть ссылки отображаются, когда в источнике данных есть записи, и не отображаются, когда нет записей. Я не понимаю, почему это работает. Ведь, как я думаю, стадия биндинга происходит после стадии выполнения серверных блоков (<% ... %>), то есть gridView.Rows.Count всегда равно 0!

Если посмотреть на то, что генерируется при этом всё становится на свои места.

private void __Renderform1(HtmlTextWriter __w, Control parameterContainer)
{
      __w.Write("\r\n    <div>\r\n\t\t");
      parameterContainer.Controls[0].RenderControl(__w);
      __w.Write("\r\n\t\t\r\n\t\t");
            
       if (this.gridView.Rows.Count != 0)
      {
            parameterContainer.Controls[1].RenderControl(__w);
            __w.Write("\r\n\t\t\t");
            parameterContainer.Controls[2].RenderControl(__w);
            __w.Write("\r\n\t\t");
      }
      __w.Write("\r\n    </div>\r\n    ");
}... << RSDN@Home 1.2.0 alpha rev. 0>>
...
Рейтинг: 0 / 0
Вопрос по data-binding
    #33872532
Vadimmer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, RustM, Вы писали:


RM>Если посмотреть на то, что генерируется при этом всё становится на свои места.
[Skipped]

То есть дело в том, что серверные блоки исполняются на самом деле после биндинга. Я правильно вас понял?
...
Рейтинг: 0 / 0
Вопрос по data-binding
    #33872593
RustM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Vadimmer, Вы писали:

V>Здравствуйте, RustM, Вы писали:


RM>>Если посмотреть на то, что генерируется при этом всё становится на свои места.
V>[Skipped]

V>То есть дело в том, что серверные блоки исполняются на самом деле после биндинга. Я правильно вас понял?

Да, конечно.... << RSDN@Home 1.2.0 alpha rev. 0>>
...
Рейтинг: 0 / 0
Вопрос по data-binding
    #33873295
Аноним
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть вопрос на эту же тему. Если мне нужно на asp:imagebutton на ImageUrl забиндить картинку через Page.ResolveUrl(...). Просто в сайте используется masterpage, и страницы могут находиться в разных каталогах. Что делать в этом случае ?
...
Рейтинг: 0 / 0
Вопрос по data-binding
    #33873684
RustM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, <Аноним>, Вы писали:

А>Есть вопрос на эту же тему. Если мне нужно на asp:imagebutton на ImageUrl забиндить картинку через Page.ResolveUrl(...). Просто в сайте используется masterpage, и страницы могут находиться в разных каталогах. Что делать в этом случае ?

Используй ResolveUrl вместо Page.ResolveUrl.

ResolveUrl есть у каждого контрола. Он вычисляет адрес старницы относительно своего расположения на диске.... << RSDN@Home 1.2.0 alpha rev. 0>>
...
Рейтинг: 0 / 0
Вопрос по data-binding
    #33873728
Аноним
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, Аноним, Вы писали:

А>Есть вопрос на эту же тему. Если мне нужно на asp:imagebutton на ImageUrl забиндить картинку через Page.ResolveUrl(...). Просто в сайте используется masterpage, и страницы могут находиться в разных каталогах. Что делать в этом случае ?

Можно использовать символ ~ :

ImageUrl="~/images/logo.png" и в серверном кОнтроле тильда заменится на корневой путь приложения.
у несерверного можно использовать <%=Request.ApplicationPath + "путь к картинке"%>
путь к корню приложения можно получать и из AppCurrentDomain и из HttpRuntime
...
Рейтинг: 0 / 0
Вопрос по data-binding
    #33873740
roman-k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Аноним, Вы писали:

А>Есть вопрос на эту же тему. Если мне нужно на asp:imagebutton на ImageUrl забиндить картинку через Page.ResolveUrl(...). Просто в сайте используется masterpage, и страницы могут находиться в разных каталогах. Что делать в этом случае ?

Можно использовать символ ~:

ImageUrl="~/images/logo.png" и в серверном кОнтроле тильда заменится на корневой путь приложения.
у несерверного можно использовать <%=Request.ApplicationPath + "путь к картинке"%>
путь к корню приложения можно получать и из AppCurrentDomain и из HttpRuntime
...
Рейтинг: 0 / 0
Вопрос по data-binding
    #33873787
Аноним
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем ответившим, то что надо.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вопрос по data-binding
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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