private void AddPane(IDockingPane pane) { if (pane == null) { throw new ArgumentNullException(nameof(pane)); } var paneControl = new RadPane { Tag = pane }; paneControl.DataContext = new PaneModel(pane); paneControl.SetBinding(HeaderedContentControl.HeaderProperty, new Binding(nameof(PaneModel.Header))); paneControl.PaneHeaderVisibility = pane.PaneHeaderVisibility; paneControl.CanUserClose = pane.CanUserClose; DockingPanel.SetInitialSize(paneControl, new System.Windows.Size(pane.InitialWidth, pane.InitialHeight)); var content = new ContentControl(); RegionManager.SetRegionName(content, pane.RegionName); paneControl.Content = content; VM.Panes.Add(paneControl); }
public CreatedDockingPane(IDockingPane dockingPane, IDockingPaneMetaData dockingPaneMetaData) { DockingPane = dockingPane ?? throw new ArgumentNullException(nameof(dockingPane)); DockingPaneMetaData = dockingPaneMetaData ?? throw new ArgumentNullException(nameof(dockingPaneMetaData)); }
public PaneModel(IDockingPane pane) { this.Pane = pane ?? throw new ArgumentNullException(nameof(pane)); pane.HeaderChanged += (sender, e) => RaisePropertyChanged(nameof(Header)); pane.IsHiddenChanged += (sender, e) => RaisePropertyChanged(nameof(IsHidden)); }