none
Как перегрузить контролы на master page? RRS feed

  • Вопрос

  • В

    Всем добрый день. Подскажите, пожалуйста, как перегрузить(обновить) пользовательские контролы на master page странице? Или как master страницу  обновить?

    Спасибо.

    27 января 2011 г. 18:55

Ответы

  • Да, в таком случае это может быть кэш. Проверьте, пожалуйста, настройки кэширования в конфигурационном файле web.config (секции outputCache, outputCacheSettings и cache), а также настройки кэширования на уровне страниц (директива @ OutputCache).

    • Помечено в качестве ответа Evgen1982MVP 31 января 2011 г. 12:15
    28 января 2011 г. 11:06

Все ответы

  • Не совсем понятен вопрос. Вы хотите перезагрузить содержимое мастер-страницы с сервера без перезагрузки ее дочерных ContentPlaceHolder-ов?

    Если Вам нужно получить доступ к мастер-странице или ее элементам в ASP.NET из дочернего ContentPlaceHolder-а (дочерней страницы), то можно воспользоваться свойством Page.Master . Если Вам нужно динамически задать мастер-страницу при загрузке, это можно сделать в обработчике PreInit. Если Вам просто нужно перезагрузить всю страницу из JavaScript, то window.location.reload(true).

    • Помечено в качестве ответа Evgen1982MVP 31 января 2011 г. 12:14
    • Снята пометка об ответе Evgen1982MVP 31 января 2011 г. 12:14
    27 января 2011 г. 19:18
  • Не совсем понятен вопрос. Вы хотите перезагрузить содержимое мастер-страницы с сервера без перезагрузки ее дочерных ContentPlaceHolder-ов?

    Если Вам нужно получить доступ к мастер-странице или ее элементам в ASP.NET из дочернего ContentPlaceHolder-а (дочерней страницы), то можно воспользоваться свойством Page.Master . Если Вам нужно динамически задать мастер-страницу при загрузке, это можно сделать в обработчике PreInit. Если Вам просто нужно перезагрузить всю страницу из JavaScript, то window.location.reload(true).

    Мне надо перегрузить всю  master страницу c дочерними   ContentPlaceHolderами, но не используя javascript?
    27 января 2011 г. 19:58
  • А кто или что будет инициировать перезагрузку страницы?

    При наступлении какого события или после какого действия она должна перезагрузиться?

    27 января 2011 г. 20:07
  • А кто или что будет инициировать перезагрузку страницы?

    При наступлении какого события или после какого действия она должна перезагрузиться?


    Например, после нажатия кнопки.
    27 января 2011 г. 20:23
  • Не совсем понял проблему.

    Разместите на странице кнопку:

    <asp:Button runat="server" Text="Button" />
    
    При ее нажатии будет перезагружена вся веб-страница (включая содержимое мастер-страницы), при этом последовательно будут вызваны обработчики Page_Load: сначала дочерней страницы, а затем мастер-страницы.

    В этом можно убедиться, установив вызовы System.Diagnostics.Debugger.Break(); внутри обработчиков Page_Load и запустив сайт из-под отладчика в Visual Studio.

    27 января 2011 г. 22:01
  • Не совсем понял проблему.

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

    Отправленные(10)
    Принятые(15)

    Вот такой контрол, находится на master странице. В placeholder есть форма отправки  сообщения, то есть когда пользователь отправит сообщение, юзерский контрол на master странице должен обновится(сделать запрос к базе и посчитать количество отправленных сообщений).   Это по идее так должно быть.

    На самом деле происходит по другому, я нажимаю на кнопку отправить,  происходит перезагрузка страницы, а на  юзерском контроле ничего не меняется.  Но если я нажимаю на любую ссылку, которая находится на master странице, то контрол обновляется.

    Я вот думаю может это кэш?

    28 января 2011 г. 10:52
  • Да, в таком случае это может быть кэш. Проверьте, пожалуйста, настройки кэширования в конфигурационном файле web.config (секции outputCache, outputCacheSettings и cache), а также настройки кэширования на уровне страниц (директива @ OutputCache).

    • Помечено в качестве ответа Evgen1982MVP 31 января 2011 г. 12:15
    28 января 2011 г. 11:06
  • Evgen1982, вы проверили настройки кеширования? Если это были они, то, пожалуйста, пометьте соотвествующее сообщение как ответ. Не забывайте отмечать сообщения, решившие проблему. Спасибо.
    Для связи [mail]
    31 января 2011 г. 10:26
    Модератор