gpt4 book ai didi

c# - 使用 Caliburn.Micro 在应用程序栏和 Conductor 之间进行交互的最佳方式

转载 作者:行者123 更新时间:2023-11-30 17:10:48 24 4
gpt4 key购买 nike

我一直在尝试使用应用程序栏(当然还有 caliburn AppBarButton 项),它预计会根据事件的枢轴项更改其按钮集及其操作。

这些项目通过屏幕 View 模型表示,它们的父项是 Conductor,其 View 包含应用栏。

我真的被上面的问题困住了,基本上我想不通两件事:

1) 当 LoadedPivotItem 被触发时,如何从我的 View 模型正确访问应用程序栏并绑定(bind)其按钮消息?当我在那里添加一些指定其 Message 属性的按钮时,如 Message = "DoSomething",点击时没有任何反应。当我在 XAML 中执行此操作时,一切都很好。 OnInitialize 或 .ctor 也可以正常工作,但我实际上需要知道选择了哪个数据透视项来注入(inject)正确的按钮!

2) 当按钮 Action 触发时,我如何将它正确地传递给子 Screen 以便它调用自己的方法?事件聚合器是唯一正确的方法吗?

如果可能的话,请给我一些代码示例——我在网上找不到任何东西

最佳答案

我已经自己解决了这个问题。

基本上我试过几个第三方应用吧,都弃用了。如果有兴趣,可以查看它们:

它们都不适合我,但只是因为我项目中的 caliburn。在正常情况下,它们会非常适合,因为第一个允许定义 ButtonsSource,第二个允许在 XAML 中为每个数据透视/全景项目设置自定义按钮!哇!

我使用了这个链接:http://www.markermetro.com/2010/07/technical/windows-phone-7-creating-that-elusive-reusable-application-bar/这回答了我的第一个问题。

至于第二个问题,我目前只是检查 subview 模型是否处于事件状态,然后从 Conductor 调用其适当的方法。我知道有点脏,但在这一点上总比没有好。

关于c# - 使用 Caliburn.Micro 在应用程序栏和 Conductor 之间进行交互的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11819950/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com