|
Открытие WPF формы из Dll в WinFormsApp и её "встраивание" в панель
|
|||
---|---|---|---|
#18+
Добрый день, знатоки! Моя проблема схожа с этой: http://www.sql.ru/forum/922174-1/wpf-v-dll Есть приложение, которое открывает формы из dllек. Решил взяться за WPF. Хочу модифицировать основное приложение таким образом, чтобы оно могло открывать и WPF формы. Код вызова формы из основного приложения (без WPF): Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Имена DllName, ClassName, Type, MethodName берутся в верхних частях кода. Опустим этот момент. Метод "MethodName" находится в DLL проекте формы. Вот пример: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
В качестве Control c передаётся контрол из основного приложения типа Panel в который и вписывается новая форма. По идее передавать контрол в "дочернюю" форму это лишнее, но тем не менее "реализовано уже так" и речь вовсе не об этом. Вопрос: Как добавить поддержку WFP Window? Я создаю WpfControlLibrary, добавляю WIndow (Wpf) и могу её открыть в основном приложении и взаимодействовать с ней. Но как мне вписать новую WPF форму в панель? У неё ведь нету свойства Dock. По координатам не получается. Так же не получилось и через ElementHost. Вообщем перепробовал кучу вариантов, но увы... Помогите, пожалуйста? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2014, 00:34 |
|
Открытие WPF формы из Dll в WinFormsApp и её "встраивание" в панель
|
|||
---|---|---|---|
#18+
В WPF class library держать не окна, а ContentControl/CustomControl, хостить в винфорс-окне через тот же ElementHost. Свойство Dock им не нужно, т.к. если явно не заданы Width, Height, VerticalAlignment. HorizontalAlignment (если только у двух последних не значение Stretch), то они ведут себя, как если бы в винформс для них было бы задано Dock=Fill. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2014, 08:39 |
|
Открытие WPF формы из Dll в WinFormsApp и её "встраивание" в панель
|
|||
---|---|---|---|
#18+
Сон Веры Павловны, Не могли подкинуть пример запуска WPF Control из dll в приложении WinForms? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2014, 16:09 |
|
Открытие WPF формы из Dll в WinFormsApp и её "встраивание" в панель
|
|||
---|---|---|---|
#18+
Сон Веры Павловны, Не могли, ли, пожалуйста* ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2014, 16:18 |
|
Открытие WPF формы из Dll в WinFormsApp и её "встраивание" в панель
|
|||
---|---|---|---|
#18+
Алексей Ку., ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2014, 17:08 |
|
Открытие WPF формы из Dll в WinFormsApp и её "встраивание" в панель
|
|||
---|---|---|---|
#18+
Спасибо огромное! Со всем разобрался. У меня так и было реализовано, но я не вытянул элемент вперёд (не сделал BringToFront). Вот и сидел мучался. Вот код, который открывает WPF элемент, встраивает его в панельку и выполняет из неё метод (мало ли кому пригодится): Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2014, 09:33 |
|
|
start [/forum/topic.php?fid=21&fpage=22&tid=1441079]: |
0ms |
get settings: |
11ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
49ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
others: | 308ms |
total: | 462ms |
0 / 0 |