0

我在我的 Windows 应用商店应用程序中使用CaliburnMicro 。
一切都很好,但是当我将 Button 放入 Popup 时,ViewModel 中的方法不会被调用。如果我将 Button 从 Popup 移动到 Page - 一切都像魅力一样。

前任。代码.xaml

<Button x:Name="Method1"/>
<Popup  Width="400" Height="300" IsOpen="True">
    <Button x:Name="Method2"/>
</Popup>

在 ViewModel.cs

public void Method1() //this method is called
    {
      var a = 10; 
    }

public void Method2() //this method isn't called
    {
      var a = 10; 
    }

需要一些帮助。

更新

我也尝试添加到我的弹出窗口

 cal:Bind.Model="{Binding}"

在代码中我检查popup.Datacontext的是嵌套的 ViewModel

4

1 回答 1

1

您可以通过执行类似的操作来显式声明操作消息。

<Popup  Width="400" Height="300" IsOpen="True">
     <Button x:Name="Method2" Content="Popup}"
             cal:Message.Attach="Method2"/>
</Popup>

有关 Action 的更多详细信息,请点击此处

于 2013-05-08T23:50:05.647 回答