0

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

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

Click.SetCommand(newButton, commandNew);

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

  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 );

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

4

1 回答 1

0

这个问题已经整理好了。在上面我动态绑定命令的代码中,我应该使用以下代码行。

newButton.SetBinding(RadButton.CommandProperty, commandBinding);
于 2013-05-15T11:04:29.770 回答