الحصول على وضع الماوس بالنسبة إلى الشبكة القابلة للتمرير

StackOverflow https://stackoverflow.com/questions/4211342

  •  25-09-2019
  •  | 
  •  

سؤال

لذا فإن شبكتي في هذه المرحلة تتوسع ديناميكيًا إلى أي ارتفاع ، ويمكنني التمرير لأسفل للحصول على إحداثيات باستخدام E.GetPosition (Maingrid) بالنسبة للشبكة. إنه يعمل بشكل جيد حتى عندما أقوم بالتمرير. سأقدم مثالاً.

لدي شبكة مع بعض الصور في الخلفية. ارتفاع الشبكة في هذه المرحلة هو 950. إذا قمت بسحب مربع الاختيار الخاص بي في أسفل الشبكة وأحصل على الموضع بالنسبة له (E.GetPosition (Maingrid)) ، أحصل على 950. رائع.

الآن ، عندما أقوم بتغيير حجم ما بعد 950 ، لنقول 1200 ، يجب أن أرفع لأسفل لرؤية بقية شبكتي. أفعل نفس الشيء ، ارسم مربعًا محددًا في الجزء السفلي من شبكتي ، متوقعًا أن يكون تنسيق Y الخاص بي 1200 ولكن بدلاً من ذلك يحصل على تنسيق ص من 950 إلى الإحداثي y وأنا غير متأكد من كيفية القيام به يشير إلى ذلك. أريد إلى حد كبير أن أقول لـ WPF "احصل على الموقف بالنسبة للشبكة ولكن تأكد من أنك تحصل عليه دائمًا من الأصل في الجزء العلوي من الشبكة عند 0،0 وليس فقط جزء الشبكة المرئي أنت".

هل كانت مفيدة؟

المحلول

مُثَبَّت. لدي شبكة خارجية تعمل كحاوية وشبكة داخلية. كنت أستهدف الشبكة الخارجية معتقدًا أنها ستتغير في الحجم أيضًا عندما تغيرت الشبكة الداخلية ، لكنني لا أعتقد ذلك. يعمل الآن عن طريق استهداف الشبكة الداخلية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top