命令绑定在代码后面

时间:2013-05-15 08:57:21

标签: silverlight mvvm binding command

我正在尝试在自定义控件的代码中绑定命令。控件本身没有ViewModel,但它将成为其中一部分的页面。该视图模型具有多个命令,如按钮点击的新建,保存,删除。从现在开始我必须以编程方式创建这些按钮,我还必须将它们的命令绑定在以前通过XAML绑定发生的代码中。     

请注意,如果使用以下方法在控件的代码隐藏中定义命令,我可以将代码绑定到代码中。

Click.SetCommand(newButton, commandNew);

但是由于它们存在于其包含页面的Viewmodel中,我无法弄清楚如何做到这一点。 我采用了以下方法但没有取得多大成功。虽然它适用于绑定在同一View Model中定义的其他属性!

  RadButton newButton =  new RadButton(); // create a new rad button
  Binding commandBinding = new Binding(); //create a command 
  commandBinding.Path = new PropertyPath("commandNew");
  Click.SetCommand(newButton , commandBinding as ICommand);
  buttonToolbar.Items.Add(newButton );

非常感谢任何帮助。感谢。

1 个答案:

答案 0 :(得分:0)

此问题已排序。在上面的代码我动态绑定命令我应该使用下面的代码行。

newButton.SetBinding(RadButton.CommandProperty, commandBinding);