2013-05-08 129 views
0

我在我的Windows应用商店中使用CaliburnMicro
所有的作品都很棒,但是当我将Button放入Popup时,ViewModel中的方法不会被调用。如果我将Button从Popup移动到Page - 所有作品都像魅力一样。无法处理按钮点击弹出

Ex。代码 的.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; 
    } 

需要一些帮助。

UPDATE

我也试图添加到我的弹出

cal:Bind.Model="{Binding}" 

而在代码中,我检查popup.Datacontext是嵌套视图模型

回答

1

您可以通过显式声明的行动消息做这样的事情。

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

有关动作的更多详细信息here

+0

我会在星期一尝试它,并回应你。 – jimpanzer 2013-05-09 06:57:34

+0

是的,它的工作原理。感谢帮助。 – jimpanzer 2013-05-10 06:33:54