WPF

2016-01-13 5 views
12

में डॉक किए गए ओपन विंडोज 10 टच कीबोर्ड हमने विंडोज 8 में एक डब्ल्यूपीएफ टच एप्लिकेशन बनाना शुरू किया और हाल ही में विंडोज़ 10 में माइग्रेट करना शुरू किया। एक फीचर जिसे हमने कार्यान्वित किया है, एक विंडोज़ कीबोर्ड खोल रहा है जब TextBox फोकस प्राप्त करता है।WPF

 string path = @"C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe"; 
    var info = new ProcessStartInfo(path); 
    info.WindowStyle = ProcessWindowStyle.Maximized; 
    var p = new Process(); 
    p.StartInfo = info; 
    p.Start(); 

Windows 10 कुंजीपटल तथापि में के रूप में ही गोदी व्यवहार प्रतीत नहीं होता है: Windows 8 में, यह रजिस्ट्री EdgeTargetDockedState की स्थापना की स्थापना और TabTip प्रक्रिया को प्रारंभ करके नीचे करने के लिए कुंजीपटल डॉक करने के लिए संभव हो गया था विंडोज 8. कीबोर्ड अब किसी भी अधिकतम विंडो को ओवरले करता है जो किसी भी एप्लिकेशन के निचले भाग को छुपाता है। शेष स्थान को फिट करने के लिए केवल अधिकतम-अधिकतम विंडो का आकार बदल दिया गया है।

मैं निम्नलिखित लिंक देख लिया है, लेकिन कोई समाधान नहीं मिला:

Windows 10 कुंजीपटल प्रोग्राम के रूप में एक विस्तृत विंडो के लिए डॉक किया जा सकता है?

+0

क्या आपको कोई समाधान मिला है? – nicruo

+0

जहां तक ​​मुझे पता है, विंडो को अधिकतम होने पर विंडोज 10 में कीबोर्ड डॉक नहीं किया जा सकता है। मैंने माइक्रोसॉफ्ट लिंक में पूछा है जहां इस सुविधा का आधिकारिक तौर पर अनुरोध किया जा सकता है, लेकिन उसे संतोषजनक उत्तर नहीं मिला है। अगर यह लागू नहीं किया जाएगा, तो मुझे लगता है कि मुझे विंडो को 'लगभग अधिकतम' देखना होगा और फिर कीबोर्ड खोलना होगा (जो बहुत बदसूरत समाधान की तरह लगता है)। –

उत्तर

5

मैंने डब्ल्यूपीएफ ऐप में टैबटिप एकीकरण से संबंधित सबकुछ स्वचालित करने के लिए अपनी परियोजना को खोल दिया।

आप nuget पर प्राप्त कर सकते हैं, और उसके बाद आप सभी की जरूरत आपकी ऐप्लिकेशन स्टार्टअप तर्क में एक साधारण config है:

TabTipAutomation.BindTo<TextBox>(); 

आप किसी भी UIElement को TabTip स्वचालन तर्क बाध्य कर सकते हैं। वर्चुअल कीबोर्ड तब खुल जाएगा जब कोई भी तत्व फोकस करेगा, और जब तत्व फोकस खो देगा तो यह बंद हो जाएगा। इतना ही नहीं, लेकिन TabTipAutomation UIElement (या विंडो) को दृश्य में ले जायेगा, ताकि टैबटिप केंद्रित तत्व को अवरुद्ध नहीं करेगा।

अधिक जानकारी के लिए project site देखें।

स्पष्टीकरण के लिए: यदि आप इस पैकेज का उपयोग करेंगे तो टैबटिप डॉक नहीं किया जाएगा, लेकिन आपका यूआई देखेंगे, जो मुझे लगता है कि आप जो हासिल करना चाहते हैं।

+0

धन्यवाद @ Макс Федотов, मैंने आपकी परियोजना का उपयोग नहीं किया, लेकिन मैंने उन टुकड़ों को उठाया और खींच लिया जो मुझे चाहिए और इससे मुझे जिस मुद्दे का सामना करना पड़ रहा था, उससे पहले मुझे मदद मिली। – BigHeadCreations

2

चेक इस अनुच्छेद: http://www.codeproject.com/Tips/1120263/Virtual-Keyboard-TabTip-integration-in-WPF-on-Win

वर्चुअल कीबोर्ड खुल जाएगा जब ऐसे किसी भी तत्व ध्यान केंद्रित हो जाएगा, और जब तत्व फोकस खो देंगे उसे बंद करेंगे।

+0

हालांकि यह लिंक प्रश्न का उत्तर दे सकता है, लेकिन यहां उत्तर के आवश्यक हिस्सों को शामिल करना बेहतर है और संदर्भ के लिए लिंक प्रदान करना बेहतर है। लिंक किए गए पृष्ठ में परिवर्तन होने पर लिंक-केवल उत्तर अमान्य हो सकते हैं। – Marusyk