दिलचस्प संदर्भ मेनू आइटम से गोलीबारी आदेशों से संबंधित समस्या ...WPF कमान में ContextMenu की उत्पत्ति पासिंग
मैं अपने नियंत्रण, InsertRowCmd में एक पंक्ति सम्मिलित करने के लिए एक कमांड सक्रिय करना चाहते हैं। इस कमांड को पता होना चाहिए कि पंक्ति कहां डालें।
मैं Mouse.GetPosition() इस्तेमाल कर सकते हैं, लेकिन है कि मुझे माउस वर्तमान की स्थिति है, जो मेनू आइटम से अधिक होगा मिलेगा। मैं इसके बजाय संदर्भ मेनू की उत्पत्ति प्राप्त करना चाहता हूं।
किसी भी एक कैसे आदेश को पैरामीटर के रूप संदर्भ मेनू के मूल पारित करने के लिए पर कोई सुझाव हैं?
नमूना कोड:
प्रयोग क्लिक हैंडलर बजाय ताकि मैं कोड में मूल पा सकते हैं:
<UserControl x:Name="MyControl">
<!--...-->
<ContextMenu x:Name="menu">
<MenuItem Header="Insert Row" Command="{x:Static customCommands:MyCommands.InsertRowCmd}" CommandParameter="?"/>
</ContextMenu>
</UserControl>
मेरे वर्तमान विचारों इस प्रकार हैं। समस्या यह है कि मुझे सक्षम/अक्षम करने को संभालना होगा।
-Handle क्लिक करें घटना और संदर्भ मेनू के मूल को बचाने के। इस सहेजी गई जानकारी को कमांड में पास करें। मैंने सत्यापित किया है कि कमांड निष्पादित होने से पहले घटनाओं को आग पर क्लिक करें।
कोई भी विचार?
संपादित करें:
मैं जोश स्मिथ के CommandSinkBinding रूट करने के लिए आदेश मेरी ViewModel वर्ग में से निपटने का उपयोग कर रहा हूँ। तो कोड निष्पादन को संभालने वाला कोड दृश्य के बारे में कुछ भी नहीं जानता है।
मुझे लगता है कि शुरुआत में "कमांड पैरामीटर" का अर्थ "कनवर्टर पैरामीटर" नहीं है? –
क्या आप संलग्न व्यवहार विचार को विस्तारित करना चाहते हैं? –
हां, धन्यवाद - निश्चित और विस्तृत। –