Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > .NET > WPF, UWP, WinRT, XAML
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 01.02.2016, 21:49   #21
chugada
Пользователь
 
Регистрация: 31.01.2016
Сообщений: 17
По умолчанию

Цитата:
На мсдн советуют отвязывать данные от грида на момент обновления коллекции, а затем снова привязывать, после того, как коллекция полностью сформирована.
Пересоздание коллекции по сути так и работает.

Картинки просто как индикаторы, т.е. если в данных что то есть то по средствам дататриггера она или покажется или нет.

Мы так и действовали в начале, убрали все колонки где есть картинки или эта PathGeometry. Вообще убрали. Эффект есть, но не принципиальный. Все одно остается момент в пол/треть секунды "замараживания", что ни как не устраивает.

Хотелось бы что бы обновляло легко, как например в браузере, где это никак не вредит остальной работе.
chugada вне форума Ответить с цитированием
Старый 03.02.2016, 01:58   #22
chugada
Пользователь
 
Регистрация: 31.01.2016
Сообщений: 17
По умолчанию

Дальше эксперементы.
Захостили WinForms.DataGridView, видно как обновляется, но при этом ничего не замораживается. Единственно что плохо, так это его застилить как надо замучаемся.

Начитались про гриды в wpf, никто не хвалит их, а жалоб на медленный рендеринг пол интеренета.

Что делать не понятно.
chugada вне форума Ответить с цитированием
Старый 03.02.2016, 02:51   #23
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

Цитата:
никто не хвалит их, а жалоб на медленный рендеринг пол интеренета.
все плохое что пишут про wpf-ные гиды - чистейшая правда

Цитата:
Единственно что плохо, так это его застилить как надо замучаемся
Это да) Да и вообще винформс хост в wpf приложении - гемморой

Цитата:
видно как обновляется
Дык может оттуда ветер и дует? Проблема в скорости получения данных, а не в гриде? Не должны вы успевать видеть как он обновляется в нормальных условиях

Код:
foreach (var item in sourсe)
                        {
                            this.Collection.Add(item);
                        }
у вас "source" какой тип имеет? Не IEnumerable<что-то-там> часом?
Благодарить в репутацию. Проклинать — туда же
Luuzuk вне форума Ответить с цитированием
Старый 03.02.2016, 03:05   #24
chugada
Пользователь
 
Регистрация: 31.01.2016
Сообщений: 17
По умолчанию

Данные приходят в своем потоке, я там не зря показал диспатчер, чтобы видно было что потоки разные.
Цитата:
у вас "source" какой тип имеет? Не IEnumerable<что-то-там> часом?
тип у него MyClass[], получаем через JsonConvert.DeserializeObject

Сейчас попробовали оставить foreach в инвоке, но указали DispatcherPriority.Background, стало чуть шустрее, но все равно плохо.

Проблема как видится в создании кучи контролов и рендер их, но что и как с этим поделать.
chugada вне форума Ответить с цитированием
Старый 03.02.2016, 03:11   #25
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

Цитата:
foreach в инвоке
(facepalm) ну нельзя там foreach использовать, вообще, неоднократно же вам говорили...

Цитата:
Проблема как видится в создании кучи контролов и рендер их, но что и как с этим поделать
ну тут уже полный код проекта нужен, профайлер и много-много вдумчивого анализа происходящего безобразия ) Хотя несколько постов назад вы писали http://programmersforum.ru/showpost....7&postcount=12, т.е. количество контролов роли не сыграло
Благодарить в репутацию. Проклинать — туда же
Luuzuk вне форума Ответить с цитированием
Старый 03.02.2016, 04:13   #26
chugada
Пользователь
 
Регистрация: 31.01.2016
Сообщений: 17
По умолчанию

Почему не сыграло, играет, но все равно заметно что гуи лочится.

Вот люди тоже пишут http://stackoverflow.com/questions/6...slow-to-render что очень все плохо. И такого везде. Тоже выставили уже везде фиксированные размеры для колонок, грида, ничего не помогает.

при 100 строк работать вообще нет возможности. Пока одну пачку отрендерит уже следующую надо. А в это время прога ни на что не отвечает.
chugada вне форума Ответить с цитированием
Старый 03.02.2016, 04:27   #27
chugada
Пользователь
 
Регистрация: 31.01.2016
Сообщений: 17
По умолчанию

Цитата:
Дык может оттуда ветер и дует? Проблема в скорости получения данных, а не в гриде?
получение данных из сети быстрое, получение данных в гриде тоже не должно сильно сказываться, потому что все свойства простые, типа public string BlahBlah{get;set;}. Нашего кода под гридом нет. Только щаблоны, контролы, стили и тригера.
chugada вне форума Ответить с цитированием
Старый 03.02.2016, 20:44   #28
Akeloya
Форумчанин
 
Регистрация: 27.01.2014
Сообщений: 115
По умолчанию

Цитата:
Сообщение от chugada Посмотреть сообщение
получение данных из сети быстрое, получение данных в гриде тоже не должно сильно сказываться, потому что все свойства простые, типа public string BlahBlah{get;set;}. Нашего кода под гридом нет. Только щаблоны, контролы, стили и тригера.
Чисто из любопытства (и если вам не сложно), покажите, как вы источник данных для грида заполняете, наиболее производительный вариант.
Akeloya вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[C# + WPF] Отлов нажатий клавиш, хуки, горячие клавиши в проекте WPF Casper-SC WPF, UWP, WinRT, XAML 3 03.03.2017 16:00
КАк создать ГУИ интерфейс без среды? Алексей_2012 Общие вопросы C/C++ 5 12.01.2016 08:20
Обновление таблицы БД SqlLite - C# WPF Notan1310 WPF, UWP, WinRT, XAML 4 08.10.2015 15:34
WPF/ Обновление ItemsSource-а ShoGUN WPF, UWP, WinRT, XAML 0 02.06.2014 18:34


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS