Пакет расширения VS 2008 — как подключить проект данных Wpf с помощью ElementHost

Я уже создал пакет, используя окно Wpf, данные Sql и ElementHost. Довольно просто, без взаимодействия, просто код. Теперь мне нужно расширить и, надеюсь, использовать проект данных Wpf в качестве моего ElementHost.Child. Я добавил ссылку на проект и использовал эту строку кода в ToolWindow.cs:

 elementHost.Child = WpfProject.Window1;

Пакет запускается, и ToolWindow открывается с пустой рамкой Wpf. Отладка сообщает мне, что я получил ссылки на элементы пользовательского интерфейса и даже данные в ToolWindow.cs, но они не попадают на страницу. Я знаю, что мне не хватает какого-то синтаксиса привязки, но большой поиск в сети не выявил волшебства. Нужно ли мне запускать проект или делать какие-то трюки с взаимодействием? Будет действительно здорово сделать эту работу, так как я смогу повторно использовать основную работу, если заставлю ее летать. Привет, Дэнни

вот код, который я поместил в класс ToolWindow:

     private ElementHost elementHost;
     protected override void Initialize()
    {           
       base.Initialize();
        elementHost = new ElementHost();
        WpfDataTest.Window1 cv = new Window1(); 
        cv.Content = cv;
        elementHost.Child = cv;
    }
    override public IWin32Window Window
    {
        get
        {
            return (IWin32Window)elementHost;
        }
    }

person isitdanny    schedule 28.11.2010    source источник
comment
Можете ли вы добавить еще немного кода, например, показывающего, как вы создаете elementHost?   -  person Colin Thomsen    schedule 28.11.2010
comment
Спасибо, Колин, я добавил это как правку.   -  person isitdanny    schedule 28.11.2010


Ответы (1)


Вот ответ: WpfDataTest.Window1 был производным классом WPF Window. Я просто изменил его на UserControl верхнего уровня в моем проекте WPFData, и он работает. В качестве дополнительного примечания для работы должны быть элементы управления верхнего уровня, такие как Items Control, UserControl или Grid. Кредит за этот ответ принадлежит Райану Молдену.

person isitdanny    schedule 28.11.2010