2009-06-17 16 views
6

मैं निम्नलिखित समारोह (कि सही नहीं है):स्क्रीन निर्देशांक को सापेक्ष निर्देशांक (Winforms) बनाने के लिए कैसे परिवर्तित करें?

private void TreeView_DragDrop(object sender, DragEventArgs e) 
{ 
    TreeNode CurrentNode = 
     TreeView.GetNodeAt(e.X - this.Left - NotesView.Left, 
          e.Y - this.Top - NotesView.Top); 
    // [snip]... 
} 

लेकिन यह सही नहीं है, क्योंकि यह खाते में रूपों सजावट नहीं ले करता है ... मुझे यकीन है कि वहाँ के लिए एक बेहतर तरीका हो गया है कर रहा हूँ हार्ड कोडिंग के अलावा इसे अन्य करें (जो वैसे भी गलत होगा, विस्टा बनाम एक्सपी बनाम Win2k जैसी कई चीजों के आधार पर), लेकिन मुझे यह नहीं मिल रहा है।

उत्तर

11

आप उपयोग कर सकते हैं:

Point clientPoint = TreeView.PointToClient(new Point(e.X, e.Y)); 

रिश्तेदार निर्देशांक पाने के लिए।

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

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