【发布时间】:2018-05-23 15:47:32
【问题描述】:
我对 Prism / WPF 自定义交互请求弹出窗口有疑问。弹出窗口在第一次请求时正确呈现,但每个后续弹出窗口都重用相同的视图。这导致TextBlock 控件连接文本、滚动条不可见、ItemsControl 项目中的动态数据不可见、弹出窗口大小错误等。是否可以在每次新交互时强制创建新的弹出窗口请求或刷新弹出窗口中的所有控件?
为了显示弹出窗口,我使用 PRISM 文档中的标准代码,例如弹出窗口被实例化为:
PopUpViewModel displayData = reportCreator.GetReport();
this.CustomConfirmationRequest.Raise(displayData, res => {
if (res.Confirmed)
{ ... }
});
其中PopUpViewModel 继承Confirmation, IInteractionRequestAware
XAML 是:
<prism:InteractionRequestTrigger SourceObject="{Binding CustomConfirmationRequest, Mode=OneWay}">
<prism:PopupWindowAction IsModal="True" CenterOverAssociatedObject="True" WindowStartupLocation="CenterScreen" >
<prism:PopupWindowAction.WindowContent>
<popups:SoPopUp/>
</prism:PopupWindowAction.WindowContent>
</prism:PopupWindowAction>
</prism:InteractionRequestTrigger>
【问题讨论】: