본문 바로가기

Silverlight

TransformToVisual 에 관한 이야기

내용출저:

http://cafe.naver.com/mssilverlight.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=2117

1번 캔버스 와 2번 캔버스 사이의 값을 구하고 싶을때

Point ptTemp = cv2.TransformToVisual(cv1).Transform(new Point(0, 0));

이라고 해주면 cv1의 좌표계의 값으로 cv2의 점 여기서는( new Point(0, 0)) 의 값을 나타내 줍니다. 0,0 으로 해주었으므로 1번 캔버스로 부터 2번 캔버스의 맨 왼쪽위쪽의좌표 까지의 거리가 나오게 됩니다. 2번캔버스 대신 사각형 까지의 거리도 가능 합니다.

1. Grid나 StackPanel 등 자동으로 정렬된 객체의 위치 보정값은 계산되지 않는다.

2. TransformGroup 안에 들어있는 Transform에 의한 변환은 계산되지 않는다. (오직 단일 Transform에 의한 계산만 가능하다.)

[출처] TransformToVisual Method에 관해서 (실버라이트(Silverlight) 정보공유 카페) |작성자 boxmile