Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как получить контрол с другой страницы? / 11 сообщений из 11, страница 1 из 1
28.07.2006, 15:12
    #33885533
Skywalker666
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
Привет всем!

Собственно основая проблема описана в сабже.

Можно ли создать другую страницу и получить из нее инициализированый контрол?

Нашел в поиске только http://www.rsdn.ru/Forum/?mid=321438 и то мне все таки нужен контрол описаный декларативно в aspx (а не aspx.cs) файле, да и тема обсуждалась 3 года назад — может какие более гуманные методы во втором ASP появились...

Если совсем в лоб, то получается создать только ту же страницу, например:

Registration regPage = new Registration();

да и то конпролы в ней нулевые.... а других страниц вообще не видит — т.е говорит что даже такого класса нет если я пытаюсь с страницы регистрации написать что то типа:

Support supPage = new Support();

Есть какие ниубудь идеи?
...
Рейтинг: 0 / 0
28.07.2006, 15:27
    #33885613
Nikolay_Ch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
S>Можно ли создать другую страницу и получить из нее инициализированый контрол?
А зачем такие сложности?
...
Рейтинг: 0 / 0
28.07.2006, 15:34
    #33885643
mogadanez
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
S>Можно ли создать другую страницу и получить из нее инициализированый контрол?
...
S>Есть какие ниубудь идеи?

2 вопроса.

1. ЗАЧЕМ?
2. инициализированый до какой степени... до вызова OnInit, OnLoad, OnPreRender?... << RSDN@Home 1.1.4 beta 6a rev. 436>>
...
Рейтинг: 0 / 0
28.07.2006, 16:00
    #33885740
Skywalker666
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
Здравствуйте, Nikolay_Ch, Вы писали:

S>>Можно ли создать другую страницу и получить из нее инициализированый контрол?
N_C>А зачем такие сложности?

Ну как бы идея в следующем: есть список юзеров, рядом кнопка ShowInfo и по ее нажатии отрабатывает AJAX, получает всю инфу и показывает ее в красивой табличке. Клиент хочет что бы дизайн этой таблички могли изменять его дизайнеры, т.е и возникла идея что бы была страница с положеным на нее DetailsView и я из аякса создавал экземпляр страницы, доставал его и datasource, заполнял и рендерил назад в ответ к JS в строку.
...
Рейтинг: 0 / 0
28.07.2006, 16:03
    #33885759
Nikolay_Ch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
S>Ну как бы идея в следующем: есть список юзеров, рядом кнопка ShowInfo и по ее нажатии отрабатывает AJAX, получает всю инфу и показывает ее в красивой табличке. Клиент хочет что бы дизайн этой таблички могли изменять его дизайнеры, т.е и возникла идея что бы была страница с положеным на нее DetailsView и я из аякса создавал экземпляр страницы, доставал его и datasource, заполнял и рендерил назад в ответ к JS в строку.
Бр-р-р... А что мешает в OnRender все свойства контрола узнать и их уже отобразить?
...
Рейтинг: 0 / 0
28.07.2006, 16:23
    #33885859
Skywalker666
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
Здравствуйте, Nikolay_Ch, Вы писали:

S>>Ну как бы идея в следующем: есть список юзеров, рядом кнопка ShowInfo и по ее нажатии отрабатывает AJAX, получает всю инфу и показывает ее в красивой табличке. Клиент хочет что бы дизайн этой таблички могли изменять его дизайнеры, т.е и возникла идея что бы была страница с положеным на нее DetailsView и я из аякса создавал экземпляр страницы, доставал его и datasource, заполнял и рендерил назад в ответ к JS в строку.
N_C>Бр-р-р... А что мешает в OnRender все свойства контрола узнать и их уже отобразить?

Так вот как бы в этом и вопрос — как довести нужную страницу до кондиции OnRender (или хотя бы OnLoad) что бы получить эти контролы, заполнить их и сделать им:

StringWriter sw = new StringWriter();
HtmlTextWriter tw = new HtmlTextWriter(sw);
dvMember.RenderControl(tw);
userDetails = sw.ToString();

Или вы имеете в виду, что бы изначально заполнить DetailsView и потом просто яваскриптом делать видимым/невидимым — так такое не получиться, так как юзеров толпа и при клике на каждом должна показывается именно его информация (без перегрузки страницы — при помощи AJAX)

Да и в добавок используется AjaxPro а при вызове его методов экземпляр страницы где он находится не создается, так что даже если DetailsView будет на тойже странице где и методы аякса расположены, то все равно надо создавать экземпляр этой же страницы (замкнутый круг, блин). Вот и появилась идея вынести это в отдельную страницу и потом использовать на разных. Была идея вынести в отдельный контрол, но и его не получилось загрузить...

Да, согласен, что выглядит общая картина немного диковато, так что если у кого будут идеи — буду рад выслушать.
...
Рейтинг: 0 / 0
28.07.2006, 16:47
    #33885984
Nikolay_Ch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
S>Так вот как бы в этом и вопрос — как довести нужную страницу до кондиции OnRender (или хотя бы OnLoad) что бы получить эти контролы, заполнить их и сделать им:
А зачем? Если находясь на этой странице ты запрашиваешь ее-же? В ней и отрабатывай запрос.
...
Рейтинг: 0 / 0
28.07.2006, 17:53
    #33886174
Skywalker666
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
Здравствуйте, Nikolay_Ch, Вы писали:

S>>Так вот как бы в этом и вопрос — как довести нужную страницу до кондиции OnRender (или хотя бы OnLoad) что бы получить эти контролы, заполнить их и сделать им:
N_C>А зачем? Если находясь на этой странице ты запрашиваешь ее-же? В ней и отрабатывай запрос.

эээ... похоже мы говорим о разных вещах.

Попробую объяснить по другому: на странице есть метод AJAX

[AjaxPro.AjaxMethod]
public bool GetUserInfo(int userId)
{
//fill details view and render it in a string to return to the page
}

На этой же странице (а в идеале и на другой) есть DetailsView который я хочу заполнить, отренедерить и вернуть строкой на страницу. Проблема в том что AjaxPro не создает страницу когда вызываются его методы на этой же странце (поэтому я не могу просто взять и написать имя Контрола) (в отличии от других аяксов, например Anthem, но он мне достался по наследству так что выбора особого нет). Поэтому что бы получить этот DetailsView мне надо создать экземпляр страницы и там уже добраться до контролов. Вот как это сделать?
...
Рейтинг: 0 / 0
28.07.2006, 19:13
    #33886331
mogadanez
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
> Вот как это сделать?

перейти на Atlas... << RSDN@Home 1.1.4 beta 6a rev. 436>>
...
Рейтинг: 0 / 0
31.07.2006, 15:52
    #33889552
Skywalker666
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
Здравствуйте, mogadanez, Вы писали:

>> Вот как это сделать?

M>перейти на Atlas

Да, такие идеи тоже были, но насколько я понял в атласе создается веб-сервис с отдельным файлом и значит мне все равно нужно создавать экземпляр какой нибудь страницы что бы достать из нее DetailsView... или я неправильно понял?
...
Рейтинг: 0 / 0
31.07.2006, 16:06
    #33889601
mogadanez
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить контрол с другой страницы?
Здравствуйте, Skywalker666, Вы писали:

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

>>> Вот как это сделать?

M>>перейти на Atlas

S>Да, такие идеи тоже были, но насколько я понял в атласе создается веб-сервис с отдельным файлом и значит мне все равно нужно создавать экземпляр какой нибудь страницы что бы достать из нее DetailsView... или я неправильно понял?

правильно, но это только часть функциональности Atlas'a. Там гораздо больше всего, в частности посмотрите на UpdatePanel.... << RSDN@Home 1.1.4 beta 6a rev. 436>>
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как получить контрол с другой страницы? / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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