2013-08-23 3 views
10

मेरे पास नीचे दिए गए आइटम नियंत्रण हैं जो आइटम को पूरी तरह से लपेटते हैं लेकिन इसमें लंबवत स्क्रॉलबार नहीं है इसलिए मैं लपेटा हुआ आइटम नहीं देख सकता। स्क्रॉलबार को दिखाने के लिए मैं कैसे प्राप्त कर सकता हूं?आइटम कंट्रोल लापता लंबवत स्क्रॉलबार

<ItemsControl x:Name="tStack" Grid.Column="0" Grid.Row="1" 
        ItemsSource="{Binding Shows.View}" 
        HorizontalAlignment="Stretch" VerticalAlignment="Stretch" 
        BorderThickness="0.5"> 
     <ItemsControl.ItemsPanel> 
      <ItemsPanelTemplate> 
       <WrapPanel Orientation="Horizontal" HorizontalAlignment="Left" 
          VerticalAlignment="Top"/> 
      </ItemsPanelTemplate> 
     </ItemsControl.ItemsPanel> 
     <ItemsControl.ItemTemplate> 
      <DataTemplate> 
       <Viewbox HorizontalAlignment="Left" Height="250"> 
        <Controls1:MyShowsUserControl Padding="10"/> 
       </Viewbox> 
      </DataTemplate> 
     </ItemsControl.ItemTemplate> 
    </ItemsControl> 

उत्तर

19

ItemsControl डिफ़ॉल्ट रूप से ItemsPresenterScrollViewer में लपेट नहीं करता है तो आप तो जैसे मैन्युअल रूप से इसे क्या करना है:

<ScrollViewer Grid.Column="0" Grid.Row="1"> 
    <ItemsControl x:Name="tStack" ... > 
     <!-- .... --> 
    </ItemsControl> 
</ScrollViewer> 
+0

बहुत अजीब ... मैं इससे पहले कि यह 20x की कोशिश की और यह काम करते हैं और अब यह करता है नहीं था ... धन्यवाद! – touyets

+1

मुझे समस्या का पता चला: यदि मैं स्क्रॉलव्यूअर की क्षैतिज स्क्रॉलबार दृश्यता के लिए कोई मान दर्ज करता हूं तो यह ठीक से काम नहीं करता है – touyets

4

अपने ItemsControl एक ScrollViewer में नियंत्रण लपेटें।

<ScrollViewer VerticalScrollBarVisibility="Auto"> 
    <ItemsControl ... 
</ScrollViewer> 

ScrollViewer में के बजाय अपनी ItemControl में Grid.Column="0" Grid.Row="1" गुण डाल करने के लिए याद रखें।

0

उपयोग ScrollViewer और संपत्ति "VerticalScrollBarVisibility" सच निर्धारित किया है।

< ScrollViewer VerticalScrollBarVisibility = "ऑटो">

यहाँ अपने ItemsControl

</ScrollViewer>

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