Я пытаюсь преобразовать это приложение WPF в WPF UserControl, чтобы я мог использовать его в приложении WinForms через ElementHost. Я новичок в WPF и никогда не трогал его до этой попытки, так что я могу поступить совершенно неправильно.
Я получил проект UserControl для компиляции, однако мои StaticResources подчеркнуты в VS с сообщением " Ресурс 'x' не может быть разрешен ". Я попытался переместить xamls с необходимыми элементами x: Key на один уровень вверх (на тот же уровень, что и UserControl Dijagram.xaml), но он все еще не может их разрешить.
В приложении WinForms при попытке добавить UserControl через конструктор, выбрав размещенный контент в задачах ElementHost, я получаю следующую ошибку: " Произошла ошибка при попытке создать объект типа 'DijagramLC.Dijagram'. Make уверен, что тип имеет конструктор по умолчанию."(даже если конструктор по умолчанию существует).
Однако, если я добавлю это в codebehind, вот так:
wpfUserControl = new Dijagram();
elementHost1.Child = wpfUserControl;
Controls.Add(elementHost1);
код компилируется, но выдает эту ошибку времени выполнения: « System.Windows.Markup.XamlParseException:« Предоставить значение для «System.Windows.StaticResourceExtension», вызвало исключение ». Номер строки '20' и позиция строки '4'. ---> System.Exception: Не удается найти ресурс с именем 'MyToolbar'. Имена ресурсов чувствительны к регистру."
Я пробовал с App.xaml и без него и добавлял элементы ResourceDictionary для проблемных xamls, но в основном я понятия не имею, что я делаю:)
Я загрузил код в свой SkyDrive и был бы очень признателен, если бы кто-нибудь взглянул и сказал мне, что я делаю неправильно:
https://skydrive.live.com/redir.aspx?cid=21be1f8e850e85cc&resid=21BE1F8E850E85CC!353
Я ненавижу вслепую прыгать в новую техонолию, как это, но на этот раз у меня не было выбора, и мне нужно знать, выполнимо ли мое требование таким образом.