2012-07-13 73 views
2

我有2個列表框和一個滾動查看器,我希望scrollviewer將兩個列表框一起滾動。但我不知道該怎麼做。這裏是我的XAML:兩個列表框的一個滾動查看器

 <ScrollViewer Grid.Row="1"> 
     <Grid> 
      <ListBox Name="listboxRSSFeedItems" Width="240" Height="644" Margin="0,0,240,0"> 
       <ListBox.ItemTemplate> 
        <DataTemplate> 
         <Grid> 
          <Grid.RowDefinitions> 
           <RowDefinition Height="Auto" /> 
           <RowDefinition Height="Auto" /> 
          </Grid.RowDefinitions> 
          <TextBlock TextWrapping="Wrap" Text="{Binding Title}" Grid.Row="0" FontSize="24" HorizontalAlignment="Left" /> 
          <HyperlinkButton Content="Link to details" NavigateUri="{Binding Link}" HorizontalAlignment="Left" Grid.Row="1" Margin="0,0,0,30" /> 
         </Grid> 
        </DataTemplate> 
       </ListBox.ItemTemplate> 
      </ListBox> 
      <ListBox Name="listboxRSSFeedItems2" Width="240" Height="644" Margin="240,0,0,0"> 
       <ListBox.ItemTemplate> 
        <DataTemplate> 
         <Grid> 
          <Grid.RowDefinitions> 
           <RowDefinition Height="Auto" /> 
           <RowDefinition Height="Auto" /> 
          </Grid.RowDefinitions> 
          <TextBlock TextWrapping="Wrap" Text="{Binding Title}" Grid.Row="0" FontSize="24" HorizontalAlignment="Left" /> 
          <HyperlinkButton Content="Link to details" NavigateUri="{Binding Link}" HorizontalAlignment="Left" Grid.Row="1" Margin="0,0,0,30" /> 
         </Grid> 
        </DataTemplate> 
       </ListBox.ItemTemplate> 
      </ListBox> 
     </Grid> 
    </ScrollViewer> 

非常感謝


確定。我只是試圖用grid來做一個列表框。它工作正常,但如何選擇哪個網格添加我的項目。 我曾經添加「listboxRSSFeedItems.Items.Add(item)」,但現在,我該如何選擇第二列。

<ScrollViewer Grid.Row="1"> 
     <ListBox x:Name="listboxRSSFeedItems" Width="480" Height="680"> 
      <ListBox.ItemTemplate> 
       <DataTemplate> 
        <Grid> 
         <Grid.ColumnDefinitions> 
          <ColumnDefinition /> 
          <ColumnDefinition /> 
         </Grid.ColumnDefinitions> 
         <Grid x:Name="first" Grid.Column="0"> 
          <TextBlock TextWrapping="Wrap" Text="{Binding Title}" /> 
          <HyperlinkButton NavigateUri="{Binding URL}" TargetName="_blank"/> 
         </Grid> 
         <Grid x:Name="second" Grid.Column="1"> 
          <TextBlock TextWrapping="Wrap" Text="{Binding Title}" /> 
          <HyperlinkButton NavigateUri="{Binding URL}" TargetName="_blank" /> 
         </Grid> 
        </Grid> 
       </DataTemplate> 
      </ListBox.ItemTemplate> 
     </ListBox> 
    </ScrollViewer> 

再次感謝

+0

嘗試使用兩個堆疊面板的列表框 – 2012-07-13 11:24:21

+0

您是否需要從列中選擇項目或僅顯示它們的能力? – 2012-07-13 14:27:56

+0

只需顯示它們。點擊並打開網頁,它的工作原理,但我不知道如何選擇正確的列... :( – TDK 2012-07-13 21:22:27

回答

0

你不應該設置你的列表框的高度。

PS:使用設置VerticalScrollBarVisibility爲 「已禁用」 的列表框列

<ScrollViewer > 
     <Grid> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition /> 
       <ColumnDefinition /> 
      </Grid.ColumnDefinitions> 
      <ListBox x:Name="first" Grid.Column="0" /> 

      <ListBox x:Name="second" Grid.Column="1" /> 
     </Grid> 
    </ScrollViewer> 
+0

它應該是'RowDefinition'而不是列他試圖垂直滾動。 – abdhoms 2014-08-06 23:12:48

0

考慮佈局。 而使用StackPanel代替Grid這個puprose會更好。