Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
5 / 5 / 0
Регистрация: 01.02.2010
Сообщений: 98

Вопрос по DataGridView и VirtualMode

05.04.2010, 14:20. Показов 3820. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Работаю с DataGridView в виртуальном режиме, подскажите как добавлять строки в обработчике события:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
            dataGridView1.Columns.Add("Name", "_Name1");
            dataGridView1.Columns.Add("Name", "_Name2");
            dataGridView1.Columns.Add("Name", "_Name3");
            dataGridView1.VirtualMode = true;  
            dataGridView1.CellValueNeeded += new DataGridViewCellValueEventHandler(dataGridView1_CellValueNeeded);
 
            public Dictionary<string, string[]> dict = new Dictionary<string, string[]>();
 
             // добавляем данные
 for (int i = 0; i < 20000; i++)
            {
 
                string[] str = { "N" + i.ToString(), "Значение_", "Значение_" };
                if (!dct.ContainsKey("Name"+i.ToString()))
                    dct.Add("Name" + i.ToString(), str);
                else continue;
            }
 
// Обработчки события
 
        void dataGridView1_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e)        
            {            
// блок кода : e.Value =....
            }
Я не могу добиться добавления данных по ключу

Добавлено через 16 часов 52 минуты
Будут какие-либо предложения, по виртуальному режиму работы поразительно мало литературы.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.04.2010, 14:20
Ответы с готовыми решениями:

Нужен пример работы с ListView в VirtualMode
Здравствуйте. Покажите неразумному пример работы с listView'ом в VirtualMod'e. Наполнение будет проходить с List'a. Заранее спасибо.

ListView в режиме VirtualMode, не отображаются значки
Здравствуйте. Первоначально я работал с ListView в обычном режиме, и у элементов списка значки отображались. Сейчас включил виртуальный...

Подергивание ListView в режиме VirtualMode при добавлении элемента
Здравствуйте. Для начала стоит заметить, что более забагованного контрола в винформах встречать не приходилось. Причем одни и те же...

4
1923 / 428 / 41
Регистрация: 12.07.2007
Сообщений: 2,062
05.04.2010, 18:30
Sergey2009, а где привязка к данным? В MSDN есть простой пример работы с виртуальным режимом смотрели?
0
5 / 5 / 0
Регистрация: 01.02.2010
Сообщений: 98
05.04.2010, 19:53  [ТС]
2 Green Вы о какой привязки к данным? Вы что-то путайте, Виртуальный режим тем и хорош, что DGV не содержит данные, а они "подсовываются" в обработчике событий, поэтому никакой myData<-DataBinding-> DGV нет.
0
1923 / 428 / 41
Регистрация: 12.07.2007
Сообщений: 2,062
09.04.2010, 04:58
Sergey2009, угу, мысль легла не ровно
Пример. Реализация виртуального режима для элемента управления DataGridView в Windows Forms

Цитата Сообщение от Sergey2009 Посмотреть сообщение
Виртуальный режим тем и хорош, что DGV не содержит данные
Он их содержит, но не все, а только малую часть. Однако данные для для виртуального режима все равно должны быть где-то закэшированы.

В CellValueNeeded вам дается индекс строки и ячейки грида, система кэша должна быть построена так, чтобы позволяла по этим данным однозначно установить значение в ячейку.
0
5 / 5 / 0
Регистрация: 01.02.2010
Сообщений: 98
09.04.2010, 16:12  [ТС]
>>Он их содержит, но не все, а только малую часть.

Нет, в виртуальном режиме работы DataGridView "берет" данные из пользовательского хранилища и он их не содержит, а только отображает.Это, например, видно из описания события (DataGridView.CellValueNeeded ) :

Происходит, когда свойство VirtualMode элемента управления DataGridView имеет значение true и объекту DataGridView требуется значение для ячейки, необходимое для форматирования и отображения этой ячейки.

Всеравно спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.04.2010, 16:12
Помогаю со студенческими работами здесь

Вопрос по DataGridView
При вводе вещественных чисел с точкой вылетает ошибка, при вводе с запятой все нормально. Подскажите как заставить шарп понимать и то и...

Вопрос по DataGridView
Скажите, пожалуйста, как поменять название вот этой ячейки?

Вопрос с datagridview
Как поместить поля объекта в датагрид, который находится на другой форме?

Вопрос DataGridView и Odbc
Не ругайте сильно пожалуйста, я новичек. Подключаюсь без проблем к mySQL базе так (установлен mySQL ODBC драйвер): public static void...

Вопрос по дизайну DataGridView
Сушествует ли возможность сделать все знаки в DataGridView сделать одинаковой ширины? Т.е. как в том же Блокноте от Microsoft или в др....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Данные берутся из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru