public FullWindowPopup() { _contentControl = new ContentControl() { HorizontalContentAlignment = HorizontalAlignment.Stretch, VerticalContentAlignment = VerticalAlignment.Stretch }; _popup = new Popup() { Child = _contentControl }; var binding = new Binding() { Source = this, Path = new PropertyPath(nameof(IsOpen)), Mode = BindingMode.TwoWay }; _popup.SetBinding(Popup.IsOpenProperty, binding); Action keepPopupSize = () => { Window.Current.SizeChanged += delegate { ReSize(); }; ReSize(); }; var app = Bootstrapper.Current; if (app != null && app.IsInConstructing) { // 应用程序的 App 类继承自 Bootstrapper,并且当前处于 App 类的构造函数中,将保持 Popup 大小的方法放至构造函数执行完成后再执行。 app._waitForConstructedActions.Add(() => { keepPopupSize.Invoke(); return Task.FromResult<object>(null); }); } else { keepPopupSize.Invoke(); } }