2010-07-07 7 views
5

मेरे पास एक WPF 4 एप्लिकेशन है जहां मैंने मानक DragDrop.DoDragDrop दृष्टिकोण का उपयोग करके ड्रैग और ड्रॉप लागू किया है, लेकिन मैं इसे माउस ईवेंट के बजाय स्पर्श का उपयोग करके कर रहा हूं।WPF 4 मल्टी-टच ड्रैग और ड्रॉप

मेरी ग्रिड के लिए मेरे XAML इस प्रकार है (कि इम खींचने) के रूप में:

<Grid x:Name="LayoutRoot" 
     ManipulationStarting="ManipulationStarting" 
     ManipulationDelta="ManipulationDelta" 
     ManipulationCompleted="ManipulationCompleted" 
     IsManipulationEnabled="True"> 
    <!-- children in here --> 
</Grid> 

अब कोड के पीछे इस तरह है:

private void ManipulationStarting(object sender, ManipulationStartingEventArgs e) 
    { 
     e.ManipulationContainer = this; 
     e.Handled = true; 
    } 

    private void ManipulationDelta(object sender, ManipulationDeltaEventArgs e) 
    { 
     e.Handled = true; 
     DragDrop.DoDragDrop(this, new DataObject(GetType(), this), DragDropEffects.Move); 
    } 

    private void ManipulationCompleted(object sender, ManipulationCompletedEventArgs e) 
    { 
     //completed stuff 
    } 

लेकिन जब मैं एक के साथ खींचें करने के लिए कोशिश उंगली पहले से ही दूसरी उंगली के साथ खींच रही है (उदाहरण के लिए अलग-अलग हाथ, जो दो लोगों को अनुकरण करेंगे) दूसरा स्पर्श ठीक से पंजीकरण नहीं कर रहा है, वास्तव में, ऐसा लगता है कि खिड़कियां सोचती हैं कि मेरी दो उंगलियां स्केल करने की कोशिश कर रही हैं (एक चुटकी इशारा की तरह) ...

क्या कोई इस के आसपास जाने का तरीका जानता है?

धन्यवाद एक बहुत मार्क

उत्तर

4

मल्टी टच के लिए, यदि आप Windows टच के लिए भूतल टूलकिट का उपयोग करना चाहते करने के लिए जा रहे हैं। इसमें मल्टी-टच परिदृश्यों के लिए उपयुक्त ड्रैग-एंड-ड्रॉप फ्रेमवर्क शामिल है। इसमें drag-and-drop framework शामिल है। उस लिंक में कई तरह के परिदृश्य शामिल हैं।

+0

धन्यवाद जोश, बीमार – Mark

+0

पर एक नज़र डालें 21 मार्च 2013 तक, सतह 2.0 एसडीके और रनटाइम डाउनलोड के लिए उपलब्ध है, यहां: http://www.microsoft.com/en-us/download/details। aspx? id = 26,716 –

1

हालांकि यह सिर्फ सही अनुमान लगाने है, मैं कहूँगा कि DragDrop.DoDragDrop() समानांतर में कई खींचें guestures को संभालने के लिए सक्षम नहीं है।

सूचकांकों:

  • वहाँ विधि करने के लिए एक स्पर्श आईडी
  • DoDragDrop() के कार्यान्वयन स्थिर है
  • की कॉल (जो चल रहे ड्रैग इशारों फर्क के लिए आवश्यक हो जाएगा) पारित करने के लिए कोई संभावना नहीं है DoDragDrop() ड्रॉप होने या रद्द होने तक अवरुद्ध हो रहा है
  • यह ड्रैग और ड्रॉप (जिसे Win7 के लिए अपडेट नहीं किया गया था) के ओएलई संस्करण पर आधारित है

हालांकि, अगर कोई मुझे इस मामले में सही कर सकता है तो मुझे खुशी होगी, क्योंकि मैं वर्तमान में स्पर्श समर्थन के लिए उपयुक्त डीएनडी एपीआई भी खोज रहा हूं।

सादर, सात