is there a screen refresh method for calc

i find that when i setdataarray() into merged cells, the data goes in just fine but is sometimes not visible until after i click away from the sheet and back. so i am doing this for the moment:

with thiscomponent.currentcontroller
	dim sht
	sht = .activesheet 
end with

which works. So i am wondering is there a .refresh() or .redraw() or any such method that would be appropriate?

Does it become visible after you press F9? (in which case, XCalculatable::calculate() call could be enough, like ThisComponent.calculate())

i hadn’t thought of that, but sadly it does not cause a redraw.
Edit: probably because none of the cells are formulas

… and also doen’s ctrl+shift+f9 work? (ThisComponent.calculateAll())

Recalculations don’t help if the cells to be redrawn are not affected by calculations.

Shift+Ctrl+R to redraw (hopefully still works).

still works. still would be nice to know what method its calling… the macro recorder yields this snippet:
dispatcher.executeDispatch(document, “.uno:Repaint”, “”, 0, Array())

… and that is the direct answer: use .uno:Repaint call specifically doing what you need.

i figured out this solution, which i guess is as primitive as it will ever get. anybody finds something more elegant, by all means post.

' force screen redraw 
thiscomponent.currentcontroller.frame.layoutmanager.HideCurrentUI = true
thiscomponent.currentcontroller.frame.layoutmanager.HideCurrentUI = false