2011-02-05 7 views
0

私は観測可能なコレクションのオブジェクトを2列のグリッドに取り込みますか?2つの列グリッドにデータバインディングを設定しますか?

私はこの効果をtakeitsラップパネルを使って実現しようとしましたが、アイテムはスタックしてしまいました。

<toolkit:WrapPanel Margin="5,0,0,0" Width="400"> 
    <ItemsControl ItemsSource="{Binding Trips}"> 
     <ItemsControl.ItemTemplate> 
      <DataTemplate> 
       <StackPanel Height="236" Width="182"> 
        <Button Style="{StaticResource VasttrafikButtonTrip}"> 
         <StackPanel Width="152" Height="140"> 
          <TextBlock Text="{Binding FromName}" /> 
          <TextBlock FontFamily="Segoe WP Semibold" Text="till" /> 
          <TextBlock Text="{Binding ToName}" /> 
         </StackPanel> 
        </Button> 
        <TextBlock HorizontalAlignment="Left" Width="160" FontSize="16" FontWeight="ExtraBlack" Text="{Binding TravelTimeText}" /> 
        <TextBlock HorizontalAlignment="Left" Width="160" Margin="0,-6,0,0" FontSize="16" Text="{Binding TransferCountText}" /> 
       </StackPanel> 
      </DataTemplate> 
     </ItemsControl.ItemTemplate> 
    </ItemsControl> 
</toolkit:WrapPanel> 

答えて

2

WrapPanelのための唯一の子はそうスタッキングは、デフォルトでは、垂直方向とStackPanelで、ItemsControlに内部ItemsPanelによって行われItemsControlになります。だから、「2列」を取得するには、代わりにこの

<ItemsControl ItemsSource="{Binding Trips}"> 
    <ItemsControl.ItemsPanel> 
     <ItemsPanelTemplate> 
      <toolkit:WrapPanel Margin="5,0,0,0" Width="400"/> 
     </ItemsPanelTemplate> 
    </ItemsControl.ItemsPanel> 
    <ItemsControl.ItemTemplate> 
     <DataTemplate> 
      <StackPanel Height="236" Width="182"> 
       <Button Style="{StaticResource VasttrafikButtonTrip}"> 
        <StackPanel Width="152" Height="140"> 
         <TextBlock Text="{Binding FromName}" /> 
         <TextBlock FontFamily="Segoe WP Semibold" Text="till" /> 
         <TextBlock Text="{Binding ToName}" /> 
        </StackPanel> 
       </Button> 
       <TextBlock HorizontalAlignment="Left" Width="160" FontSize="16" FontWeight="ExtraBlack" Text="{Binding TravelTimeText}" /> 
       <TextBlock HorizontalAlignment="Left" Width="160" Margin="0,-6,0,0" FontSize="16" Text="{Binding TransferCountText}" /> 
      </StackPanel> 
     </DataTemplate> 
    </ItemsControl.ItemTemplate> 
</ItemsControl> 
+0

恐ろしいようItemsControl.ItemsPanelWrapPanelを移動しよう!魅力的な働き:Dありがとう – Richard

関連する問題