我想学习Caliburn Micro在我的Windows Phone应用程序中使用它。 我不知道如何在我的MenuFlyoutItem中使用Caliburn Micro。 我试过这样的方式:
<StackPanel micro:Message.Attach="[Event Holding] = [Action OpenFlyout($source)]">
<FlyoutBase.AttachedFlyout>
<MenuFlyout>
<MenuFlyoutItem Text="Edit" micro:Message.Attach="[Event Click] = [Action EditEle($source)]"/>
<MenuFlyoutItem Text="Remove" micro:Message.Attach="[Event Click] = [Action DelEle($source)]" />
</MenuFlyout>
</FlyoutBase.AttachedFlyout>
...
</StackPanel>
“OpenFlyout”有效。因此,当我点击并按住元素时,我可以查看MenuFlyout。 但是,如果我点击“编辑”,应用程序崩溃。
我试图在函数中插入断点但应用程序没有停止。 所以,我认为存在绑定问题。
方法DelEle和EditEle非常相似(除了他们的任务)。 在这里你可以找到方法:DelEle。
public void DelEle(FrameworkElement senderElement)
{
CreditCard obj = senderElement.DataContext as CreditCard;
DeleteFromCardKeyList(obj.NameID.ToUpper());
DeleteTxtCardFile(obj.NameID.ToUpper());
CreditCards.Remove(obj);
}
抱歉我的英语不好。谢谢你的帮助。
答案 0 :(得分:0)
使用下面的代码
caliburn:Action.TargetWithoutContext="{Binding Path=DataContext,ElementName=stackpanelName}"