如何设置我的对话框的大小取决于主窗口(明智的 MVVM)

How to set the size of my Dialog depends on the MainWindow (MVVM wise)

你能告诉我如何设置我的用户控件的宽度(这应该取决于主窗口)。通过棱镜?

我尝试在 Xaml 中使用 Application.Current.Window.Width,但它在那里不起作用。

这是我的代码:

    <prism:InteractionRequestTrigger SourceObject="{Binding ShowExpressionHelpWindowNotificationRequest}">
        <prism:PopupWindowAction IsModal="True" CenterOverAssociatedObject="True" WindowStartupLocation="CenterOwner">
            <prism:PopupWindowAction.WindowContent>
             <vm:SpreadSheetUserControl Width="{Binding Source={x:Static Application.Current.MainWindow.Width}}"/>
            </prism:PopupWindowAction.WindowContent>
        </prism:PopupWindowAction>
    </prism:InteractionRequestTrigger>

任何非棱镜解决方案也可以。

提前致谢。

试试这个:

<prism:InteractionRequestTrigger SourceObject="{Binding ShowExpressionHelpWindowNotificationRequest}">
    <prism:PopupWindowAction IsModal="True" CenterOverAssociatedObject="True" WindowStartupLocation="CenterOwner"
        xmlns:win="clr-namespace:System.Windows;assembly=PresentationFramework">
        <prism:PopupWindowAction.WindowContent>
            <vm:SpreadSheetUserControl Width="{Binding Path=MainWindow.Width, Source={x:Static win:Application.Current}}"/>
        </prism:PopupWindowAction.WindowContent>
    </prism:PopupWindowAction>
</prism:InteractionRequestTrigger>