سؤال

أحاول إضافة WPF Usercontrol إلى مشروع WinForms موجود واحصل على قفص الاتهام WPF Usercontrol وملء المساحة بأكملها.

هناك إطار حالي يحمل WinForms UserControls في نموذج أودي (في لوحة) استجابة لنقرات الزر. هذا هو المكان الذي أحاول فيه ربطه - WinForms UserControl الذي يتم تحميله حاليا سيكون له Elementhost.

التسلسل الهرمي:

  • Form1.cs - يحتوي على لوحة تحصل على WinForms Usercontrols محمولة ديناميكيا
    • WinForms UserControl - يحتوي على Elementhost
      • WPF Usercontrol.

تم ضبط Elementhost Dock على ملء وملكية الطفلة التي تم تعيينها إلى UCREPORPORT، والتي هي WPF UserControl، والتي تحتوي على العلامات التالية (تصميم المستوى الأعلى فقط):

<UserControl x:Class="MyClassName"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <TabControl HorizontalAlignment="Left" Name="tabControl1">
        <TabItem Header="Header1">
           ...The interesting stuff goes here
        </TabItem>
    </TabControl>
</UserControl>

يتوسع محتوى UserControl عموديا عندما يمكنني تغيير حجم النموذج، ولكن أفقيا، فإن المحتوى يتوسع فقط كبير بما يكفي لاستيعاب محتواه.

عندما أرى WinForms Usercontrol (الشخص الذي يحتوي على Elementhost) في المصمم، فإن المشكلة واضحة. يتم تقديم محتوى WPF المحدد ويتم ملء الجزء العلوي إلى الأسفل، ولكن لم يترك إلى اليمين.

أنا من العقل أنه شيء في XAML الذي يجب تعيينه (ربما في إعلان UserControl؟) للحصول عليه لملء حاوية الوالدين، وهو النسيان - لا يمكنني العثور على الممتلكات.

هل شخص ينيرني؟

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

المحلول

تغيير الأفقي إلى التمدد أو التخلص منه بالكامل.

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