2010-05-05 6 views
4

저는 ScrollViewer를 사용하여 이미지를 표시하고 있습니다. 이미지의 ScaleTransform은 LayoutTransforms 중 하나로 설정됩니다. ScrollViewer의 ActualSize에 이미지 너비를 맞춰서 설정했습니다. 내 문제는 이미지 높이가 수직 스크롤바가 필요하다면 (자동으로 설정 한 경우) 이미지가 조금만 확대됩니다. 나는 스크롤바가 존재하는지 그리고 올바른 스케일을 얻는지를 결정하는 방법을 알고 있지만, 스크롤바의 실제 폭을 결정하는 방법을 알 수는 없다. 아마 추측 할 수있을 것 같지만 나중에 응용 프로그램에 스타일을 추가하면 스크롤바가 다른 크기가 될 수 있습니다. 또한 필자는 높이에 맞추기를하고 가로 스크롤 막대의 높이를 가져올 필요가 있습니다 (세로 스크롤 막대의 너비를 얻는 방법에 대한 대답은 가로 스크롤 막대 높이를 가져 오는 것이라고 가정합니다). 분명한).ScrollViewer에서 세로 스크롤 막대의 너비를 결정합니다.

답변

0

스케일링 계산에서 ActualHeight 및 ActualWidth 대신 ViewableHeight 및 ViewableWidth를 사용하고 Auto 대신 Scroll bar Visibility를 Visible로 설정합니다. 그러나 스크롤 막대를 자동으로 설정할 수있는 또 다른 대답을 받아 들일 것입니다.

편집 :

OK, 지금 가시로 설정 스크롤 막대를 가지고있다. 그런 다음 ViewableHeight 및 ViewableWidth를 사용하여 계산을 수행합니다. 그런 다음 스크롤 막대를 다시 자동으로 설정합니다. 이것은 우아하지 않은 경우에도 작동하는 것 같습니다.

+0

실제로이 속성은 ViewportHeight 및 ViewportWidth라고 생각합니다. –

관련 문제