2017-01-09 75 views
0

我在查看模型中显示对话框时遇到问题。问题是,“底层内容不会变暗和禁用”,正如文档所说的那样。如果我点击底层视图,连接到关闭命令的对话框中的按钮有时会被禁用,用户无法点击它。Caliburn.Micro的MaterialDesignXaml对话框查看模型

我定义的DialogHost在我的MainView这样的(也试过在ShellView):

<materialDesign:DialogHost 
     HorizontalAlignment="Center" 
     VerticalAlignment="Center" 
     CloseOnClickAway="True" /> 

从我MainViewModel我表明这样的对话:

Dim errView As New ErrorView 
    Dim res = Await DialogHost.Show(errView) 

我有线了在ErrorView对话框中的按钮上关闭命令是这样的:

Command="{x:Static materialDesign:DialogHost.CloseDialogCommand}" 

回答

1

你的问题是与defin DialogHost的ition;你有它作为一个空的元素。

DialogHost是一个ContentControl。里面的所有东西都会变暗。所以,你在你的窗口/页XAML的根定义它,更有点像:

<materialDesign:DialogHost CloseOnClickAway="True"> 
    <StackPanel> 
    <TextBlock>Hello World</TextBlock> 
    <TextBlock>This is the main content of my application</TextBlock> 
    </StackPanel> 
</materialDesign:DialogHost> 
+0

吉兹那么简单......感谢您的帮助。我没有注意到关闭按钮被禁用的问题。它有某种相关性吗? – jweaver

+0

可能是的,静态关闭命令是RoutedCommand,所以它冒泡,寻找一个DialogHost来执行。 –