2013-06-21 28 views
6

我用火MvxCommand with CommandParameter努力,但面临着以下问题: MyView.axml包含:使用MvxCommand随着CommandParameter结合

<LinearLayout 
    android:orientation="horizontal" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Button1" 
     local:MvxBind="Click MyCommand, CommandParameter=foo" /> 
    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Button2" 
     local:MvxBind="Click MyCommand, CommandParameter=bar" /> 
</LinearLayout> 

MyViewModel.cs:

public class MyViewModel : MvxViewModel 
{ 
    public ICommand MyCommand { get; private set; } 

    public MyViewModel() 
    {         // param is null 
     MyCommand = new MvxCommand<string>(param => 
     { 
      if (param == "foo")    
      { 
      // do something 
      } 
      else if (param == "bar") 
      { 
      // do something else 
      } 
     }); 
    } 
} 

但是当我检查param variable is null

我在做什么错了?

回答

8

您的代码在我的源代码树的头部上工作。

但是这个功能只有两个星期的时间。

我的猜测是,这个功能要么没有进入你正在使用的版本,要么是它有一个错误。

你可以检查你的调试跟踪这个绑定?那里有任何信息吗?

  • 如果跟踪表明CommandParameter是一个未知的符号,那么我的猜测是您将需要自己构建最新源代码或等待新版本。
  • 如果跟踪显示其他内容,则可以在安装过程中修补问题。

有一件事我知道我们并修复了其中Cirrious.MvvmCross.Binding.dll基于ValueConverter的没有被覆盖Setup.ValueConverterAssemblies注册这个CommandParameter

+0

你说的没错,司徒所需的ValueConverter仅仅是一个值转换器问题! 登录者观看需要: ** MvxBind:警告:132,54找不到命名转换CommandParameter I/MvxBind(18314):132,53找不到命名转换CommandParameter I /单标准输出(18314):MvxBind :警告:132,53找不到命名的转换器CommandParameter ** 何时可以预期最近的版本? –

+0

@Stuart我正在尝试相同的'本地:MvxBind =“点击OnRemoveClick,CommandParameter =。”'我得到相同的。“。同时执行commmand。有什么想法吗? – RIYAZ

+0

对不起 - 听起来你没有像这个2013年的问题一样获得“相同”。可能是最好在一个新问题中完全解释你的问题? – Stuart