public ViewportPanel() { DataContext ??= new ViewportPanelModel(); Model.PropertyChanged += _Model_PropertyChanged; InitializeComponent(); OverlayContentPresenter.SetBinding(ContentPresenter.ContentProperty, BindingHelper.Create(this, nameof(OverlayContent), BindingMode.OneWay)); _ViewportControllerChanged(); }
public override void OnApplyTemplate() { if (HorizontalAlignment == HorizontalAlignment.Left) { RenderTransform = new TranslateTransform(-OverlayWidth - HiddenMargin, 0); OverlayContentPresenter.SetValue(DockPanel.DockProperty, Dock.Left); } else { RenderTransform = new TranslateTransform(OverlayWidth + HiddenMargin, 0); OverlayContentPresenter.SetValue(DockPanel.DockProperty, Dock.Right); } OverlayContentPresenter.Width = OverlayWidth; }