Canvas ZIndex 제어 방법...
카테고리 없음 2007. 9. 9. 23:32 |Blend의 튜토리얼 중에 ColorSwitch 라는 예제가 있다.
그곳에서 보면 칼라 스위치는 마우스가 Enter 되면 앞쪽으로 나오게 된다.
이 부분은 SetZIndex 가 담당하게 되는데.
조작 하는 방법이 조금은 다르다.
Blend에서 Grid 내부에 Canvas를 3개를 겹치게 배치 했다가 가정하겠다.
여기서 우리는 원하는 Canvas를 제일 위쪽에 가져다 놓기를 바랄때가 있을것이다.
이때 사용하는게 SetZIndex를 사용하면 된다.
하지만 이것은 Name를 가지는 객체에 포함되어져 있는 함수는 아니기 때문에 아래의
코드를 이용해야 한다.
관련msdn 로컬 주소 : http://msdn2.microsoft.com/en-us/library/system.windows.controls.panel.zindex.aspx
Canvas.SetZIndex(Step0, 1);
위와 같은 코드를 사용할 수 있다.
Canvas를 객체의 SetZIndex를 변경해준다고 생각하면 되며,
Grid 내부에 Canvas가 여러개 있을때 사용하게 되는 것이다.
즉, Grid 내부의 Canvas를 이동시키고자 할때는
Canvas.SetZIndex()를 사용하면 되는 것이다.
Step0이라는 것은 Blend에서 Canvas의 이름을 의미한다.
그리도 뒤에 오는 1이라는 숫자는
Blend에서 여러개의 객체를 배치 하고 나서 ZIndex를 보면 모두 0인 것을
알수 있다. 이 경우에 0 이지만 배치된 순서대로 화면에 표현되도록 되어 있다.
그래서 1이라는 숫자는 최상단에 배치 한다고 생각 하면된다.
다른 방법으로 3개의 객체가 있다고 했을때 0 ~ 2까지 3개의 ZIndex를
사용해도 된다.
간단하게 하기 위해서는 모두 0이고 최상단에 올려질것만 1로 설정하면
편하게 할 수 있을거 같다.