2015-04-05 3 views
0

Я пытаюсь переключиться с WinForms на WPF в моем приложении C#. Мое приложение WinForms - приложение MDI. Мне нужно сделать это также MDI в WPF. Как я могу заблокировать новое окно в моем приложении mainwindow или canvas в этом окне? Мое дочернее окно не может выйти за пределы главного окна приложения. Это дочернее окно должно отображаться в событии клика из пункта меню главного окна.WPF VS2013 - добавить новое окно для проекта как дочернего элемента главного окна

+0

Показать скриншот –

+0

Посмотрите на [Интерфейс нескольких документов WPF (MDI)] (http://wpfmdi.codeplex.com/) на CodePlex. – Clemens

ответ

-1

В вашей ситуации лучшим решением является использование System.Windows.Forms.Integration.ElementHost control. Этот contol позволяет вам поместить любой элемент управления WPF, который вам нравится. Выполните следующие действия: 1) В Windows Forms проекта создать дочернюю форму 2) Внутри этой формы добавить контроль System.Windows.Forms.Integration.ElementHost 3) в коде позади этого smomething так:

wpfElementHost.Child = new System.Windows.Controls.TextBlock() 
     { 
      Text = "Hello from WPF world.", 
      FontSize = 25, 
      FontStyle = System.Windows.FontStyles.Italic, 
      FontWeight = System.Windows.FontWeights.Bold, 
      TextAlignment = System.Windows.TextAlignment.Center 
     }; 

Примечание Я использовал полное имя, потому что Windows Forms и WPF имеют много общего. В моем случае wpfElementHost - System.Windows.Forms.Integration.ElementHost. Вы можете разместить любой элемент управления, например. просто создайте пользовательский элемент управления или пользовательский элемент управления как класс библиотеки и используйте их в приложении форм Windows. Надеюсь, это помогло. Дайте мне знать, правильно ли я ответил на ваш вопрос.

+0

К сожалению, мы не поняли :(Я не пишу WinForms-приложения, а WPF, и мне нужны некоторые функции WinForms - главное, чтобы создать в новом окне Windows WPF и установить его в дочернее окно главного окна и настроить, что он не может выбраться из этого главное окно. – dzilupl