我创建了一个自定义控件并在OnRender中绘制了一些对象。
现在的问题是:假设我在OnRender中绘制了5个矩形。有没有办法删除例如1.矩形而不重新触发OnRender和重绘矩形2-5?
或者一般来说,还有另一种方法,您可以更新或添加/删除渲染指令,而不是每次更改时都在OnRender中重建绘图?
@dsdel:好的,这个想法是,OnRender中的计算可能非常繁重。您可以渲染文本,几何形状。我问自己,为什么我要再次创建所有Geometry和FormatedText,如果我唯一想要的,就是改变一条线的位置。上面的矩形就是一个例子。这是一个普遍的问题。是否真的有必要重新计算对OnRender的新调用中的所有元素,而不是仅更新已更改的内容。我的意思是OnRender不渲染任何东西,它只是准备一些被转移到DirectX进行渲染的对象结构。所以我只想操纵现有的对象结构,而不是每当一个小的东西发生变化时就创建一次。