Панель инструментов WPF WindowsFormsHost VS2008 выделила серым цветом все элементы управления Windows Forms.

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

Вопрос

Я пытаюсь использовать WindowsFormsHost в приложении WPF, чтобы использовать некоторые компоненты Windows Forms.

<Grid>
    <WindowsFormsHost>

    </WindowsFormsHost>
</Grid>

Все работает нормально, без ошибок, но когда я перетаскиваю компонент Windows Forms из панели инструментов в VS2008, все они становятся серыми.В некотором смысле это имеет смысл, поскольку доступны только компоненты WPF.Но как переместить компонент Windows Forms на WindowsFormsHost, если все они выделены серым цветом и недоступны?

Это было полезно?

Решение

Я не думаю, что дизайнер WPF поддерживает компоненты Windows Forms.Вам необходимо указать их в XAML или в коде.Простой пример того, как добавить кнопку WinForms в приложение WPF.Обратите внимание, что кнопка не видна в области конструктора.

<Window x:Class="DataTemplateBind.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:forms="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
    Title="Window1" Height="300" Width="300">

    <WindowsFormsHost Height="200" Name="windowsFormsHost1" Width="258" >
        <forms:Button Text="Waaa :("></forms:Button>
    </WindowsFormsHost>
</Window>

Обратите внимание на добавленное xmlns:forms пространство имен, которого нет по умолчанию.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top