假设在调用AddBindings之前初始化了bar按钮 - MyButton,那么我认为你的代码应该可以工作。
我修改了代码中WelcomeView会议样品中这下面,它似乎工作...
var s = new UIBarButtonItem()
{
Title = "Click me"
};
NavigationItem.SetRightBarButtonItem(s, false);
this.AddBindings(new Dictionary<object, string>()
{
{ Button1, "TouchUpInside ShowSponsorsCommand" },
{ Button2, "TouchUpInside ShowExhibitorsCommand" },
{ Button3, "TouchUpInside ShowMapCommand" },
{ Button4, "TouchUpInside ShowAboutCommand" },
{ s, "Clicked ShowMapCommand" },
});
//NavigationItem.SetRightBarButtonItem(new UIBarButtonItem("Tweet", UIBarButtonItemStyle.Bordered, (sender, e) => ViewModel.DoShareGeneral()), false);
很抱歉,如果这个“它为我的回答不能在你的机器上有所帮助:/
为确保此功能在发布模式下可用,您可能需要在某处添加一些UIBarButtonItem.Clicked
代码。
如果您想从绑定中找到更多的跟踪,那么您可以设置一个诊断跟踪级别(但这可能会变得非常冗长)。
这可能是值得检查的,如果你的MyCommand
被调用,但某种程度上失败 - 这可能会发生的东西,如电子邮件,PhoneCalls,推文等,这些并不总是在模拟器上工作。
谢谢@Stuart。它也适用于我。我的'MvxCommand'的'canExecute'部分返回false:/ – 2013-03-04 14:11:15
Mvx现在不做的一件事是处理canExecute以在任何控件上启用绑定 - 这可以绕过使用单独的启用/禁用属性,但不是'完美。 – Stuart 2013-03-04 15:15:41