2012-04-09 11 views
18

क्या विंडोज फोन ऐप में सॉफ्ट कीबोर्ड दिखाए जाने पर स्क्रीन को ऊपर की ओर जाने के लिए कोई तरीका है?WP7 में सॉफ्ट कीबोर्ड दिखाए जाने पर स्क्रीन स्क्रॉलिंग को रोकें?

मेरे पास एक टेक्स्ट बॉक्स है जो स्क्रीन के ऊपरी हिस्से में स्थित है, इसलिए जब सॉफ्ट कीबोर्ड दिखाया जाता है, तो यह टेक्स्ट बॉक्स को कवर नहीं करता है। हालांकि, जब टेक्स्टबॉक्स टैप किया जाता है, तो स्क्रीन अभी भी बदल जाती है।

क्या इसे रोका जा सकता है?

उत्तर

3

मुझे विश्वास नहीं है कि कुंजीपटल खोले जाने पर स्क्रॉल स्थिति बदलने का एक आसान तरीका है। हालांकि मैं कई संभावित हल के बारे में सोच सकते हैं:

  • एक ScrollViewer, जब बक्सें focusevent स्क्रॉल दर्शक स्क्रॉल कहा जाता है में सब कुछ डाल दिया आइटम आप ध्यान में रखते हुए में ScrollToVerticalOffset() का उपयोग रुचि रखते हैं रखने के लिए

  • स्क्रीन पर टेक्स्टबॉक्स को स्थानांतरित करने के लिए अनुवाद परिवर्तन के एक्स घटक का उपयोग करें। Alex Sorokoletov से इसके बारे में एक अच्छी ब्लॉग पोस्ट है।

7

मैं काफी कुछ समय बिताया इस के लिए एक समाधान खोजने की कोशिश कर - मेरे मामले में मैं पृष्ठ पर शीर्ष लेख चाहता था दूर स्क्रॉल जब कुंजीपटल खोला के बजाय स्क्रीन के शीर्ष पर रहने के लिए।

सबसे अच्छा मैं समाधान नीचे पोस्ट है, जो फ्रेम के TranslateTransform में परिवर्तन (जो कीबोर्ड खोलने/बंद करने से शुरू हो रहा है) का उपयोग करता है में वर्णित उपलब्ध सामग्री के लिए अंतरिक्ष ऊपरी हाशिया का आकार और इसलिए बदलने के लिए किया गया था पाया ।

http://sorokoletov.com/2011/08/windows-phone-70-handling-text-entry-screens/

आप तत्वों की एक संख्या के साथ एक स्क्रीन है, तो आप स्पष्ट रूप से लेआउट बदलने छोटे स्थान को समायोजित करने पर विचार कर सकते।

3

मैं ऊपर उद्धृत article में सभी टिप्पणियों की तह तक इस स्क्रॉल सभी रास्ता मिल गया:

Scrollviewer and Multiline Textbox Windows Phone

यह मुझे एलेक्स के लेख की तुलना में बेहतर मदद की।

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