2012-01-07 11 views
10

यहाँ के अंदर आइटम का संग्रह दिखा XAML मार्कअप है:एक ItemsControl क्षैतिज

 <ScrollViewer Grid.Column="1" Grid.Row="2" HorizontalScrollBarVisibility="Disabled" Width="990"> 
      <StackPanel Margin="50 0 0 40">      
       <ItemsControl x:Name="streamList" ItemsSource="{Binding StreamInformations}"> 
        <ItemsControl.ItemTemplate> 
         <DataTemplate> 
          <StackPanel Margin="10" Orientation="Horizontal" > 
           <StackPanel Orientation="Horizontal"> 
            <Image Source="{Binding ImageUrl}" Height="60" /> 
            <StackPanel Margin="10 0 0 0" VerticalAlignment="Center"> 
             <TextBlock Foreground="Black" Text="{Binding ChannelName}" FontSize="12" /> 
             <TextBlock Foreground="#999" Text="{Binding PlayerName}" FontSize="10" /> 
             <TextBlock Foreground="#999" Text="{Binding ViewCount}" FontSize="10" /> 
            </StackPanel>           
           </StackPanel>         
          </StackPanel> 
         </DataTemplate> 
        </ItemsControl.ItemTemplate> 
       </ItemsControl> 
      </StackPanel> 
     </ScrollViewer> 

और यह कि यह कैसा दिखता है:

enter image description here

मैं इन वस्तुओं को दिखाना चाहते हैं क्षैतिज रूप से और जब यह StackPanel के किनारे तक पहुंचता है तो नीचे बहती है।

ऐसा लगता है कि वर्तमान में, मेरे डेटाकॉन्टेक्स्ट संग्रह में प्रत्येक आइटम अपना स्वयं का स्टैकपैनल बना रहा है, इसलिए यह वही नहीं है जो मैं चाहता हूं।

कोई सुझाव?

+4

यदि इस प्रश्न का एकमात्र उत्तर आपके लिए काम करता है तो उसे स्वीकार करें। यदि यह तब प्रतिक्रिया प्रदान नहीं करता है कि यह आपकी समस्या के लिए क्यों काम नहीं करता है। जवाब ने स्वयं सहित, अन्य लोगों के समूह के लिए काम किया है। – Xtr

उत्तर

16

आप या तो एक WrapPanel या क्षैतिज StackPanel को ItemsPanel टेम्पलेट बदलते हैं तो आप प्रभाव आप के बाद कर रहे हैं प्राप्त कर सकते हैं ...

<ItemsControl> 
    <ItemsControl.ItemsPanel> 
     <ItemsPanelTemplate> 
      <WrapPanel Orientation="Horizontal"/> 
     </ItemsPanelTemplate> 
    </ItemsControl.ItemsPanel> 
    <ItemsControl.ItemTemplate> 
     <!--other stuff here--> 
    </ItemsControl.ItemTemplate> 
</ItemsControl> 

इस स्निपेट में, ItemsPanel एक WrapPanel क्षैतिज उन्मुख करने के लिए निर्धारित है। आइटम टेम्पलेट में आपके पास पहले से मौजूद बाध्यकारी और स्टाइल शामिल होगा ...

संबंधित मुद्दे