Vb.net – كيفية تحميل نموذج على موقع معين

برمجة


أريد أن أعرض نموذجا ثانيا، يعرض بيانات تفصيلية عن موضع معين، و ينبغي أن يكون النموذج الثاني يخفي السيطرة على النموذج الرئيسي.

يتم تحميل النموذج الفرعي بالحجم الصحيح ولكن ليس في الموضع المتوقع.

أي أفكار حول كيفية تحقيق خطتي؟

ما حاولت:

SubForm.Show()
SubForm.Size = Me.childView.Size
SubForm.Location = Me.childView.Location

الحل 1

حاول تحديد الموقع قبل الاتصال Show، وتأكد من أن الموقع الذي تقوم بتعيينه عليه يتعلق بالشاشة، وليس بالنموذج الموجود. إذا كنت تريده متعلقًا بنموذج، فستحتاج إلى إضافة الإحداثيات العلوية اليسرى لهذا النموذج إلى موقع التحكم التابع قبل تعيينه.

لكن انتبه إلى أن هذا ربما لن يعمل بالطريقة التي تريدها – Show ليس استدعاء مشروط، لذلك إذا نقر المستخدم في أي مكان على النموذج الأصلي، فسيفقد النموذج الجديد التركيز وسيتم إخفاؤه خلف الأول.
على الأرجح، تريد استخدام UserControl بدلاً من النموذج، إذا كنت تريده أن يغطي عناصر التحكم في النموذج الموجود لديك.

الحل 2

إذا كنت تبحث عن موقع محدد، استخدم: تعداد FormStartPosition (System.Windows.Forms) | مستندات مايكروسوفت[^]

واحد من التعداد هو يدوي[^] لموقع النقطة:

VB
Public Sub New()
    InitializeComponent()
    Me.StartPosition = FormStartPosition.Manual
    Me.Location = New Point(0, 0)
End Sub

فيما يتعلق بالتواصل بين الوالدين والطفل، يمكنك استخدام طرق متعددة – رد الاتصال، والمفوضين، والخصائص.

コメント

タイトルとURLをコピーしました