Вы решили воспользоваться виртуальным режимом

вы можете либо предоставлять все

Когда вы решили воспользоваться виртуальным режимом, у вас есть две возможности. Вы можете либо предоставлять все значения для строки, обрабатывая события виртуального режима, либо совмещать столбцы сетки с привязанными к данным и с несвязанными столбцами. Столбцы, которые будут заполняться в виртуальном режиме, должны определяться, как было описано в разделе «Программное конструирование DataGridView». Если вы, кроме того, привязываете некоторые столбцы к данным, то строки будут заполняться посредством привязки и вам нужно будет обрабатывать только события, относящиеся к виртуальному режиму, для столбцов, не привязанных к данным. Если вы не производите привязку данных, вам нужно добавить к сетке столько строк, сколько вы собираетесь в ней представлять, чтобы сетка могла правильно масштабировать полосу прокрутки. Затем вам нужен какой-то способ получения значений, соответствующих столбцам виртуального режима, когда они потребуются для представления сетки. Это можно сделать, вычисляя значения динамически по мере необходимости, и это является одним из важнейших случаев применения виртуального режима. Можно было бы также использовать кэшированные данные на стороне клиента в форме коллекции объектов или набора данных, либо действительно проделывать полный цикл двустороннего обмена с сервером для получения требуемых данных. В последнем случае необходима разумная стратегия опережающей загрузки и кэширования, иначе приложение быстро увязнет в обмене данными между клиентом и сервером, когда пользователь будет прокручивать сетку. Если же отображаются данные вычисляемые, то действительно имеет смысл не торопиться с вычислением значений, пока они действительно не понадобятся для отображения.

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

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