We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date

Current cell does not repaint in virtual mode (2.1.0.9)

Current cell does not repaint when using InvalidateRange. Grid is in virtual mode. Any suggestions? Thanks

3 Replies

Administrator March 17, 2005 11:13 PM UTC

Try calling grid.RefreshRange using the overload that allows you to set forceRefreshCurrentCell to true.

MI Mike March 18, 2005 02:01 PM UTC

Clay, Thanks. In my early research, the RefreshRange seemed more expensive in terms of CPU utilization than the InvalidateRange so I''ve used the latter. Maybe I can just check is the current cell intersects with my updated range and use the RefreshRange selectively.

Administrator March 18, 2005 02:28 PM UTC

Here is the code in RefreshRange. It shows what has to be done to get the currentcell refreshed.
public void RefreshRange(GridRangeInfo range, GridRangeOptions options, bool forceRefreshCurrentCell)
{
	TraceUtil.TraceCurrentMethodInfoIf(Switches.BeginEndUpdate.TraceVerbose, PaneDesc, range);
	if (this.ShouldPrepareUpdate(true))
	{
		Model.ResetVolatileData();
		InternalInvalidate(RangeInfoToRectangle(range));
		if (forceRefreshCurrentCell && range.Contains(CurrentCell.RangeInfo))
			CurrentCell.Refresh();
		Update();
	}
}
Loader.
Live Chat Icon For mobile
Up arrow icon