Wpf 按钮命令不会在第一次单击时触发

Wpf 按钮命令不会在第一次单击时触发,wpf,xaml,binding,wpfdatagrid,Wpf,Xaml,Binding,Wpfdatagrid,在我的WPF应用程序中,数据网格的每一行都有一个按钮,该按钮绑定到一个RelayCommand。如果有人单击某行中的按钮,则执行该命令的底层方法 不幸的是,这只在第二次点击时起作用!第一次单击行中的按钮时,仅选中该行。在第二次单击时,将执行该命令 如果我选择了前面的行,那么它在第一次单击按钮时工作 我做错了什么 XAML: 您能显示XAML代码吗?可能与 <DataGrid AutoGenerateColumns="False" IsReadOnly="True"

在我的WPF应用程序中,数据网格的每一行都有一个按钮,该按钮绑定到一个RelayCommand。如果有人单击某行中的按钮,则执行该命令的底层方法

不幸的是,这只在第二次点击时起作用!第一次单击行中的按钮时,仅选中该行。在第二次单击时,将执行该命令

如果我选择了前面的行,那么它在第一次单击按钮时工作

我做错了什么

XAML:


您能显示XAML代码吗?可能与
<DataGrid AutoGenerateColumns="False" 
          IsReadOnly="True" 
          Style="{StaticResource DataGridStyle}"
          ItemsSource="{Binding Path=Rows, Mode=OneWay}" 
          SelectedItem="{Binding Path=SelectedRow}">

<DataGrid.Columns>
    <DataGridTextColumn Header="Number" 
                        Width="Auto"
                        Binding="{Binding Path=Number}" />
    <DataGridTemplateColumn Header= "Cancel"
                            Width="Auto"  >
        <DataGridTemplateColumn.CellTemplate>
            <DataTemplate>
                <Button Command="{Binding RelativeSource={RelativeSource 
                                                          AncestorType=Expander}, 
                                          Path=DataContext.CancelCommand}" 
                        HorizontalAlignment="Center" 
                        Width="20" 
                        IsEnabled="{Binding IsCancelable}"
                        Visibility="{Binding RelativeSource={RelativeSource 
                                             AncestorType=DataGrid}, 
                                             Path=DataContext.PermissionToWrite, 
                                             Converter={StaticResource 
                                                      boolToVisibilityConverter}}"
                         >X</Button>
            </DataTemplate>
        </DataGridTemplateColumn.CellTemplate>
    </DataGridTemplateColumn>
</DataGrid.Columns>