我在我的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
答案 0 :(得分:1)
您可以通过执行类似的操作来显式声明操作消息。
<Popup Width="400" Height="300" IsOpen="True">
<Button x:Name="Method2" Content="Popup}"
cal:Message.Attach="Method2"/>
</Popup>
有关行动here的更多详细信息。