2015-05-19 4 views
0

Я стараюсь, чтобы отобразить изображение в моем окне:WPF Не может прокручивать изображение внутри ScrollViewer

<Window x:Class="Problem.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     Title="MainWindow" Height="350" Width="525"> 
    <DockPanel> 
     <StackPanel Orientation="Vertical"> 
      <ScrollViewer VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible"> 
       <Image Source="cat.jpg" Stretch="Uniform"> 
        <Image.LayoutTransform> 
         <RotateTransform Angle="90" /> 
        </Image.LayoutTransform> 
       </Image> 
      </ScrollViewer> 
     </StackPanel> 
    </DockPanel> 
</Window> 

где cat.jpg является 1920х1080 изображением.

Вот результат:

enter image description here

Как вы можете видеть, VerticalScrollbar отключена, хотя я не могу видеть всю голову кота. Кроме того, HorisontalScrollBar является невидимым.

Мой вопрос: Как включить полосу прокрутки для прокрутки изображения?

ответ

5

Удалить StackPanel. Он дает свое содержание бесконечное пространство, поэтому ScrollViewer имеет высоту изображения. Если вам нужно сложить что-то под изображением, создать StackPanel внутри ScrollViewer:

<Window x:Class="Problem.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="MainWindow" Height="350" Width="525"> 
<DockPanel> 
    <ScrollViewer VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible"> 
     <StackPanel> 
      <Image Source="cat.jpg" Stretch="Uniform"> 
       <Image.LayoutTransform> 
        <RotateTransform Angle="90" /> 
       </Image.LayoutTransform> 
      </Image> 
     </StackPanel> 
    </ScrollViewer> 
</DockPanel> 

+0

В моем реальном коде, мне нужно укладывать ButtonBar под моим изображением – Epitouille

+0

Затем вы должны переместить StackPanel внутри ScrollViewer. – Domysee

+0

Я отредактировал код для представления этого – Domysee

Смежные вопросы