2013-10-04 2 views
4

У меня есть следующий код XAML для основной сетки:WrapGrid горизонтальной прокрутки для Windows 8

<ListView Grid.Row="1" x:Name="NewsListBox"> 
      <ListView.Background> 
       <SolidColorBrush Color="#FF006C67" Opacity="0.5"/> 
      </ListView.Background> 
      <ListView.ItemsPanel> 
       <ItemsPanelTemplate> 
        <WrapGrid Orientation="Vertical"/> 
       </ItemsPanelTemplate> 
      </ListView.ItemsPanel> 
     </ListView> 

И это выглядит красиво, как это необходимо:

Но это не прокручивать содержимое!

Example

Хорошо, я добавить ScrollViewer:

<ScrollViewer Grid.Row="1" VerticalScrollMode="Disabled" ZoomMode="Disabled"> 
     <ListView Grid.Row="1" x:Name="NewsListBox"> 
      <ListView.Background> 
       <SolidColorBrush Color="#FF006C67" Opacity="0.5"/> 
      </ListView.Background> 
      <ListView.ItemsPanel> 
       <ItemsPanelTemplate> 
        <WrapGrid Orientation="Vertical"/> 
       </ItemsPanelTemplate> 
      </ListView.ItemsPanel> 
     </ListView> 
     </ScrollViewer> 

И складывает все по вертикали:

Example

Что я делаю неправильно?

ответ

5

Найдено решение. Нет ScrollViewer.

Просто нужно было заменить ListView GridView, поскольку ListView не предназначен для горизонтальной прокрутки.

+0

На самом деле, вы можете изменить поведение ListView так много, чтобы быть похожим на GridView. В основном это связано с настройкой ItemsPanelTemplate. Они даже используют одни и те же ресурсы для стилизации. – VasileF

1

Вы можете попробовать это

<ListView 
    ScrollViewer.HorizontalScrollMode="Enabled" 
    ScrollViewer.VerticalScrollMode="Disabled" 
> 
Смежные вопросы