Уважаемые, нужна помощь, в написании на C#/.NET (поиске, уже существующей компоненты, или совета счего начать) контрола ExListView.
Смысл такой:
1) список должен быть оч. быстрым;
2) список может иметь несколько колонок;
3) при добавлении новых строк, мог спускаться сверху вниз (стандартный), так и рости снизу вверх;
4) элементы в строки добавлялись не по индексу а по числу, которое может быть дробным, возможно от этого отказаться и наверное добавлять по строковому ключу. Если строка с таким индексом отсутствует, то соответственно создать ее, иначе получить его ListViewItem и изменять его свойства;
5) автоматическая прокрутка к "первому" элементу списка (в случае списка с ростом снизу вверх, прокрутка к нижнему элементу).
На данный момент пытаюсь использовать стандартный контрол, который нетолько не удоволетворяет требованиям и достаточно медленно выполняет поставленную задачу, но и периодически выдает глюки: при изменении свойст строки элемента (цвет, фон, шрифт), он периодически вырисовывает их как элемент по умолчанию. Вызов myListView.Invalidate() перерисовывает все правильно, но визуально одно мерцание, так как добавлять и удалять элементы приходится оч. часто.
Если никто не встечал подобного рода контрола, подскажите есть ли смысл брать в качестве родителя класс ListView, но похоже ничем не поможет и производительности не добьюсь.
Заранее спасибо!
27.10.07 00:52: Перенесено модератором из '.NET' — Хитрик Денис
Здравствуйте, Noxerist, Вы писали:
N>Здравствуйте, Аноним, Вы писали:
А>>Доброго !
А>>А использовать виртуальный ListView не поможет?
А>>С уважением !
N>Чесно говоря непонял что за виртуальный ListView? это стандартная компанента как?
Доброго !
Это свойство стандартного ListView (ListView.VirtualMode=true
Данные можно отображать например из DataTable,DataView.. где Вы сами делаете с данными любые действия.
Надо будет использовать RetrieveVirtualItem для отображения данных
С уважением!
N>>Чесно говоря непонял что за виртуальный ListView? это стандартная компанента как?
B_>Доброго !
B_>Это свойство стандартного ListView (ListView.VirtualMode=true
B_>Данные можно отображать например из DataTable,DataView.. где Вы сами делаете с данными любые действия.
B_>Надо будет использовать RetrieveVirtualItem для отображения данных
B_>С уважением!
Гляну что там такого интересного, но дело в том, что
1) думаю, что проблемы с перерисовкой не исчезнут
2) неуверен, в том, что смогу выводить новые строки таблицы листвью с низу вверх (контрол имеет прямоугольную форму, и при добавлении нового итема, он прорисовываться должен не в верхних Top координатах контрола, а снизу — с LisstViewControl.bottom координаты)