Как встроить одну форму WPF в другую?
Я хотел бы иметь форму master WPF с элементом управления tab, где каждая вкладка содержит одну независимую форму WPF. Эти формы не зависят друг от друга, поэтому я подумал, что будет проще разработать каждую из них отдельно, а затем просто встроить их в мастер-форму.
Количество форм известно, поэтому нет необходимости в динамической системе плагинов.
4 ответа:
Ознакомьтесь с этой статьей Джоша Смита в MSDN. Это отличное решение для вашего вопроса.
Приложения WPF с шаблоном проектирования Model-View-ViewModel
Когда вы используете фрейм или NavigationWindow, Вы можете загрузить различные страницы xaml и даже html. Вы также можете сделать его похожим на браузер с прямой и обратной навигацией. См. http://msdn.microsoft.com/en-us/library/ms750478.aspx
Вы можете поместить рамку на каждую вкладку и заставить ее загрузить определенную страницу.
<Window x:Class="PluginApplication.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="Window1" Height="300" Width="300"> <DockPanel> <Frame Name="frame" NavigationUIVisibility="Visible" Source="SomePage.xaml" /> </DockPanel> </Window> <Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" WindowTitle="Page Title" WindowWidth="500" WindowHeight="200"> Hello world </Page>