मेरे WPF एप्लिकेशन में, मेरे पास एक स्टैकपैन है जिसमें उनके अंदर कई नियंत्रण हैं। मैं इस स्टैकपैनल में स्क्रॉलबार कैसे जोड़ सकता हूं।
मेरे WPF एप्लिकेशन में, मेरे पास एक स्टैकपैन है जिसमें उनके अंदर कई नियंत्रण हैं। मैं इस स्टैकपैनल में स्क्रॉलबार कैसे जोड़ सकता हूं।
जवाबों:
इसे एक में डाल दें ScrollViewer
।
Stackpanel ने स्क्रॉलिंग तंत्र में निर्माण नहीं किया है, लेकिन आप हमेशा StackPanel को एक स्क्रॉल दृश्य में लपेट सकते हैं
<ScrollViewer VerticalScrollBarVisibility="Auto">
<StackPanel ... />
</ScrollViewer>
StackPanel
कार्यान्वित करता है IScrollInfo
और स्क्रॉल-संबंधित तरीकों की एक संख्या प्रदान करता है। क्या आप सुनिश्चित हैं कि इसमें किसी भी तरह का "अंतर्निहित" स्क्रॉलिंग तंत्र नहीं है?
यह इस तरह काम करता है:
<ScrollViewer VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Disabled" Width="340" HorizontalAlignment="Left" Margin="12,0,0,0">
<StackPanel Name="stackPanel1" Width="311">
</StackPanel>
</ScrollViewer>
TextBox tb = new TextBox();
tb.TextChanged += new TextChangedEventHandler(TextBox_TextChanged);
stackPanel1.Children.Add(tb);
क्षैतिज रूप से उन्मुख StackPanel के लिए, स्पष्ट रूप से दोनों स्क्रॉलबार विज़ुअलाइज़ेशन डालने से मेरे लिए क्षैतिज स्क्रॉलबार प्राप्त करने के लिए काम किया।
<ScrollViewer VerticalScrollBarVisibility="Hidden" HorizontalScrollBarVisibility="Auto" >
<StackPanel Orientation="Horizontal" />
</ScrollViewer>
यदि आपका मतलब है, तो आप अपने स्टैम्पपेल में कई मदों के माध्यम से स्क्रॉल करना चाहते हैं, इसके चारों ओर एक ग्रिड लगाने का प्रयास करें। परिभाषा के अनुसार, स्टैकपैन की अनंत लंबाई होती है।
तो कुछ इस तरह की कोशिश करो:
<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
<StackPanel Width="311">
<TextBlock Text="{Binding A}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}" FontStretch="Condensed" FontSize="28" />
<TextBlock Text="{Binding B}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
</Grid>
आप इस काम को स्क्रॉलव्यूअर के साथ भी कर सकते हैं