powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / wpf динамическая загрузка xaml
5 сообщений из 5, страница 1 из 1
wpf динамическая загрузка xaml
    #36055431
LxTLT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.
Во фрейм можно загружать страницы (Page). Если делать это динамически
Код: plaintext
frame1.Navigate(XamlReader.Parse("test.xaml"));
обычный механизм сохранения страницы работать не будет. То есть независимо от значения свойства KeepAlive, Page будет оставаться в памяти, когда будет осуществлен переход на другую страницу. Поскольку работа моей программы сопровождается многочисленными переходами по разным страницам, в памяти накапливается громадные объемы хлама. Коллектор не собирает этого добра. Подскажите пожалуйста, как можно решить подобную проблему. Порылся в поисковиках и форумах, решения не обнаружил.
...
Рейтинг: 0 / 0
wpf динамическая загрузка xaml
    #36055433
Фотография Dash Rendar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LxTLT,

а вам обязательно надо именно динамически подгружать большие объемы страниц?
...
Рейтинг: 0 / 0
wpf динамическая загрузка xaml
    #36055873
LxTLT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dash RendarLxTLT,

а вам обязательно надо именно динамически подгружать большие объемы страниц?

да обязательно, поскольку в тексте хамл-файла производятся замены перед его загрузкой...
Сейчас сделал с предварительным сохранением во временную папку на диск, но это снижает быстродействие к сожалению, все еще другие варианты...
...
Рейтинг: 0 / 0
wpf динамическая загрузка xaml
    #36055941
qu-qu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LxTLT,

Как говорится: "вам шашечки или ехать?" (с).
Так уж важно ли сохранить навигацию по загружаемым страницам Page именно через Frame?
Если реализовать навигацию самостоятельно, то можно ограничиться динамической подгрузкой UserControl-ов (UIElement), которые можно добавлять/убивать в визуальном дереве любого контейнера "на лету"...
http://msdn.microsoft.com/ru-ru/magazine/2009.01.cuttingedge.aspx
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
...
void OnDownloadCompleted(object sender, DownloadStringCompletedEventArgs e)
{
    // Parse XAML to a UI element 
    string xaml = e.Result;
    UIElement dom = XamlReader.Load(xaml) as UIElement;

    // Append to the DOM
    Placeholder.Children.Clear();
    Placeholder.Children.Add(dom);
}
...
...
Рейтинг: 0 / 0
wpf динамическая загрузка xaml
    #36055962
LxTLT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qu-qu,

сохранять навигацию вообще нет необходимости, возвращаться никогда не придется. Загружать необходимо всю страницу, а не отдельный элемент. Там могут быть контролы из других сборок в том числе.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / wpf динамическая загрузка xaml
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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