Wpf 在OnRender方法中绘制文本

Wpf 在OnRender方法中绘制文本,wpf,wpf-controls,Wpf,Wpf Controls,我有一个从Canvas继承的类。在OnRender方法中,我绘制了画布上控件所覆盖的文本 是否有方法将文本“置于”控件上方?是否有一个OnRenderComplete方法(在呈现可视化树后调用该方法)?否,至少没有任何方法可以正常工作。即使在渲染画布时设法在控件顶部绘制,您仍然只在控件所在的屏幕上绘制,控件没有被绘制的概念 如果某些控件是单独更新的,则当它们自己绘制完成时,不会向画布发出在其上绘制的信号。尝试使用DrawingVisual: 本示例中使用的DrawingCanvas类包含Dra

我有一个从Canvas继承的类。在
OnRender
方法中,我绘制了画布上控件所覆盖的文本


是否有方法将文本“置于”控件上方?是否有一个
OnRenderComplete
方法(在呈现可视化树后调用该方法)?

否,至少没有任何方法可以正常工作。即使在渲染画布时设法在控件顶部绘制,您仍然只在控件所在的屏幕上绘制,控件没有被绘制的概念


如果某些控件是单独更新的,则当它们自己绘制完成时,不会向画布发出在其上绘制的信号。

尝试使用DrawingVisual:

本示例中使用的DrawingCanvas类包含DrawingVisual对象,它可以是透明的,并放置在所有其他控件上。在这种情况下,DrawingVisual可以绘制将显示在其他控件上的文本。鼠标事件应重定向到基础控件。我希望有更简单的解决方案,但如果没有,你可以试试