2010-04-18 7 views
0

Canvas에서 상속받은 클래스가 있습니다. OnRender 메서드에서 나는 캔버스에있는 컨트롤에 의해 덮여있는 텍스트를 그립니다.OnRender 메서드에서 텍스트 그리기

컨트롤 위에 텍스트를 배치하는 방법이 있습니까? OnRenderComplete 메서드가 있습니까 (시각적 트리가 렌더링 된 후에 호출되는 방법)?

답변

0

아니요, 올바르게 작동하는 것은 없습니다. 캔버스가 렌더링 될 때 컨트롤 위에 그릴 수 있다고하더라도 컨트롤이있는 화면에서만 여전히 그릴 수 있습니다. 컨트롤에는 그려지는 개념이 없습니다.

일부 컨트롤이 개별적으로 업데이트되는 경우 캔버스에서 드로잉을 완료 할 때 캔버스 위로 그려지는 신호를 보내지 않습니다.

+0

슬픈 사실이지만 .. – Eden

1

봅니다으로 DrawingVisual을 사용 :이 샘플에서 사용

http://www.codeproject.com/KB/WPF/WPF_DrawTools.aspx

는 DrawingCanvas 클래스 DrawingVisual과 객체를 포함, 그것은 투명하고 모든 ather 컨트롤을 통해 배치 할 수 있습니다. 이 경우 DrawingVisual은 다른 컨트롤에 나타날 텍스트를 그릴 수 있습니다. 마우스 이벤트는 기본 컨트롤로 리디렉션되어야합니다. 더 간단한 해결책이 있기를 바랍니다.하지만 그렇지 않다면 시도해보십시오.

관련 문제