带有Catel EventToCommand的复选框无法在Datagrid中工作

时间:2014-11-27 08:11:04

标签: wpf xaml catel

我有以下XAML:

<DataGrid.Columns>
</DataTemplate>
</DataGridTemplateColumn.HeaderTemplate>
<DataGridTemplateColumn.CellTemplate>
   <DataTemplate>
      <CheckBox IsChecked="{Binding IsSelected, Mode=TwoWay}"
         Command="{Binding DataContext.UpdateCommand, RelativeSource={RelativeSource Mode=Self}}">
      </CheckBox>
   </DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>

在我拥有的视图模型中;

public Command UpdateCommand { get; private set; }
UpdateCommand = new Command(UpdateControls);

private void UpdateControls()
{
    //Execute
}

但是,从不执行UpdateControls。任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

问题是你绑定自己(这是CheckBox)。您应该为DataGrid指定一个名称,然后使用此绑定:

<CheckBox IsChecked="{Binding IsSelected, Mode=TwoWay}"
          Command="{Binding ElementName=myDataGrid, Path=DataContext.UpdateCommand}" />