मैं एक ऐसे आवेदन पर काम कर रहा हूं जिसमें पंजीकरण फॉर्म शामिल है। इस फ़ॉर्म में एकाधिक टेक्स्ट एंट्री बॉक्स हैं, और इसलिए स्क्रॉलव्यूअर का उपयोग उन सभी को एक पृष्ठ पर प्रदर्शित करने की अनुमति देने के लिए किया जाता है।स्क्रॉलव्यूवर और एसआईपी अंक (WP7.5 आम)
निम्नलिखित XAML कोड का एक उदाहरण नीचे छीन लिया है मैं उपयोग कर रहा हूँ:
<Grid x:Name="LayoutRoot" Background="Transparent">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,17,0,28">
<TextBlock x:Name="ApplicationTitle" Text="SCROLLVIEWER TEST" Style="{StaticResource PhoneTextNormalStyle}"/>
<TextBlock x:Name="PageTitle" Text="registration" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/>
</StackPanel>
<ScrollViewer Grid.Row="1">
<StackPanel>
<TextBlock Text="Hello" Margin="12,0,0,0"/>
<TextBox />
<TextBlock Text="Hello1" Margin="12,0,0,0"/>
<TextBox />
<TextBlock Text="Hello2" Margin="12,0,0,0"/>
<TextBox />
<TextBlock Text="Hello3" Margin="12,0,0,0"/>
<TextBox />
<TextBlock Text="Hello4" Margin="12,0,0,0"/>
<TextBox />
<TextBlock Text="Hello5" Margin="12,0,0,0"/>
<TextBox />
<TextBlock Text="Hello6" Margin="12,0,0,0"/>
<TextBox />
<TextBlock Text="Hello7" Margin="12,0,0,0"/>
<TextBox />
<TextBlock Text="Hello8" Margin="12,0,0,0"/>
<TextBox />
<TextBlock Text="END" Margin="12,0,0,0"/>
<TextBox />
</StackPanel>
</ScrollViewer>
</Grid>
(ध्यान दें कि ScrollViewer जिसका अर्थ है कि शीर्षक पैनल परदे पर हर समय रहना चाहिए एक ग्रिड सेल के अंदर है,)
स्क्रॉलिंग पूरी तरह से ठीक काम करती है, इसलिए यह कोई मुद्दा नहीं है। हालांकि, जब उपयोगकर्ता डेटा दर्ज करने के लिए टेक्स्टबॉक्स का चयन करता है (यानी सॉफ्ट कीबोर्ड खुलता है), सिस्टम पूरे पृष्ठ की सामग्री (पंजीकरण शीर्षक पैनल सहित) को धक्का देता है, जिसकी अपेक्षा व्यवहार नहीं है। [विंडोज फोन पर लोग ऐप देखें और एक नया संपर्क जोड़ने का प्रयास करें। यह एक समान संरचना शामिल है, लेकिन ScrollViewer केवल
परीक्षण मामलों
- किसी पाठ बॉक्स है कि स्क्रीन के शीर्ष के निकट दिखाई दे रहा है का चयन करें ScrollViewer अप में] सामग्री धक्का द्वारा सही ढंग से व्यवहार करती है, को खोलने के लिए कुंजीपटल।
- कीबोर्ड के साथ पृष्ठ के निचले भाग तक स्क्रॉल करने का प्रयास करें।
- पृष्ठ के निचले हिस्से में आइटम पहुंच योग्य नहीं हैं।
या
- किसी पाठ बॉक्स है कि स्क्रीन के नीचे स्थित दिख रहा है का चयन करें।
- पूरे पृष्ठ की सामग्री को धक्का दिया गया है।
- कीबोर्ड के साथ पृष्ठ के शीर्ष पर स्क्रॉल करने का प्रयास करें।
- पृष्ठ के शीर्ष पर आइटम पहुंच योग्य नहीं हैं, और कीबोर्ड पैनल बंद होने तक शीर्षक पैनल कभी भी वापस नहीं आता है।
इस मुद्दे को हल करने में कोई भी मदद की सराहना की जाएगी। धन्यवाद।
निम्न ब्लॉग पोस्ट यह हल करने के लिए एक अच्छा प्रारंभिक बिंदु हो सकता है: http://sorokoletov.com/2011/08/windows-phone-70-handling-text-entry-screens/ –
@PaulDiston धन्यवाद। मैंने पहले इस ब्लॉग को पढ़ा है। मैंने डेमो ऐप का प्रयास किया और यह वह नहीं है जिसे मैं ढूंढ रहा हूं। संक्रमण बहुत अचानक है (यानी शीर्षक पैनल केवल एसआईपी एनीमेशन खत्म होने पर फिर से प्रकट होता है), यह उल्लेख करने के लिए कि कार्यान्वयन इतना आसान नहीं है। मेरा इच्छित कार्यान्वयन संपर्क विवरणों से मेल खाता है जो आपको "लोग" ऐप में मिलते हैं जो संपर्क और पते के प्रबंधन के लिए विंडोज फोन 7 पर शामिल है। यह एक जटिल उदाहरण नहीं है, और कोई उम्मीद करेगा कि यह बॉक्स से बाहर काम करे और फॉर्म में आइटम को कवर न करे। –
यह भी कोशिश करें यदि यह स्क्रॉलिंग समस्या के साथ मदद कर सकता है। http://www.luisleo.net/2012/06/24/how-to-use-listbox-properly-with-windows-phone-7/ –