WPF DataGrid SelectedItem命令未触发

时间:2016-06-21 07:29:24

标签: wpf mvvm

我对wpf datagrid有一个关于DatagridTemplateColumn行为的问题。

<DataGrid
ItemsSource="{Binding Items, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
inf:MultiSelectorBehaviours.SynchronizedSelectedItems="{Binding SelectedItems, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}"
SelectionUnit="FullRow" SelectionMode="Extended">
<DataGrid.Columns>
    <DataGridTemplateColumn.CellTemplate>
         <DataTemplate>
               <Button Background="Transparent" 
                      BorderThickness="0" 
                      BorderBrush="Transparent" 
                      Command="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type UserControl}}, Path=DataContext.ExecuteCommand}" CommandParameter="{Binding}"  />
           </DataTemplate>
       </DataGridTemplateColumn.CellTemplate>
    </DataGridTemplateColumn>
 </DataGrid.Columns>

我的问题是:当我按下DataGridTemplateColumn中的按钮并且未选择该行时,在我的模型中触发命令。但是当首先选择我的行时,不会触发命令。有人知道为什么吗?

感谢您的帮助......

编辑:当我从&#34; Extended&#34;更改SelectionMode时to&#34; Single&#34;,它按预期工作。但我必须使用&#34;扩展&#34; ...

1 个答案:

答案 0 :(得分:0)

尝试IsSynchronizedWithCurrentItem =&#34; True&#34;在您的数据网格上。这是为什么&#34; SelectedItem&#34;相关问题出现了。否则,您应该提供更完整的代码示例以获得解决方案。