كيف يمكنني الحصول على نافذة WPF للتوسع لتناسب محتويات العناصر المتغيرة ديناميكيًا؟
-
02-10-2019 - |
سؤال
لدي تطبيق WPF يبدأ بنافذة صغيرة جدًا. شيء ما في منطقة 200x100. عندما يتم رفع أحداث معينة من مصدر خارجي ، أقوم بإضافة عنصر تحكم إلى منطقة CONSCONTROL في نافذتي. تم تعيين التحكم في العناصر حاليًا لاستخدام Stackpanel Paneltemplate.
ما أريده هو أن تنمو نافذة التطبيق عند إضافة عناصر التحكم إلى العناصر. هل هذا بكل الأحوال ممكن؟ الفكرة وراء ذلك هي الحفاظ على النافذة صغيرة قدر الإمكان في جميع الأوقات. يجب أن يتقلص أيضًا عند إزالة عناصر التحكم من العناصر.
شكرًا.
المحلول
نعم هذا ممكن. يمكنك استخدام Window.SizeToContent
خاصية للقيام بذلك. وقم فقط بتعيين أ MaxHeight
و MaxWidth
على Window
أو ال ItemsControl
في الداخل فقط حتى لا تستمر في النمو والخروج من حدود الشاشة.
نصائح أخرى
وإذا كنت ترغب في ضبطه XAML ل WPF يمكنك استخدامه
<Window
SizeToContent="WidthAndHeight"
>
يمكن تعيينه بشكل منفصل ل Height
و ال Width
إذا لزم الأمر.