Резюме виртуального режима

если нужна поддержка редактирования значений

Вот и все, что нужно знать о виртуальном режиме: вы устанавливаете свойство VirtualMode В True, Создаете необходимые вам столбцы и строки, а затем предоставляете обработчик для события CellValueNeeded, Который устанавливает соответствующее значение для отображаемой ячейки. Если нужна поддержка редактирования значений непосредственно в сетке, то дополнительно обрабатываете событие CellValuePushed И производите все необходимые действия с модифицированными значениями по мере того, как пользователь вносит свои изменения. Надеюсь, вам не придется в своих приложениях часто прибегать к виртуальному режиму, но возможность получать «на ходу» значения для отображения очень больших коллекций данных или вычисляемых столбцов весьма привлекательна. Не существует строгих и твердых правил относительно того, когда нужен виртуальный режим. Если в вашем приложении возникают проблемы с прокруткой, или вы хотите избежать затрат памяти на хранение вычисленных значений для большого числа строк, следует посмотреть, не решит ли эти проблемы виртуальный режим. Однако вам еще придется подумать о стратегии извлечения и кэширования данных, чтобы избежать серьезного затормаживания приложения на машине клиента. Если не установлено истинным свойство сетки Readonly, А тип ячеек допускает редактирование, то пользователь может щелкнуть на ячейке, подумать, а затем щелкнуть на ней еще раз, чтобы перевести ячейку в режим редактирования. После того как пользователь изменит значение, и фокус ввода, в результате действий с мышью или клавиатурой, перейдет на другую ячейку или другой элемент управления, для этой ячейки будет запущено событие CellValuePushed. В обработчике для этого события вы можете забрать из ячейки новое значение и сделать с ним все, что нужно, например, записать его обратно в свой кэш или в хранилище данных.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *