wpf datagridについて、DatagridTemplateColumnの動作について質問があります。WPF DataGrid SelectedItemコマンドが実行されない
<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でボタンを押すと、行が選択されていない場合、コマンドは私のモデルで焼成されます。しかし、私の行を最初に選択すると、コマンドは起動されません。なぜ誰が知っていますか?あなたの助けのための
おかげで...
編集:私は「シングル」に「拡張」からのselectionModeを変更すると、期待通りに働いています。しかし、私は "拡張"を使用する必要があります...
私は、あなたが ''と ''を同じものにする必要があると思います。あなたは現在、ボタンのクリックだけを処理しており、モデルを表示するコマンドを渡しています。行全体のクリックが必要な場合があります。 –
ViVi
もう少し説明できますか?なぜなら、行が選択されていないときにコマンドが起動される理由を理解できないからです... – streetmaster86
ボタンをクリックすると、ボタンコマンドが実行されるためです。行を選択すると、なぜボタンコマンドが発射されると思いますか? 解雇されません。一つのことをしてください。 PreviewMouseDownのデータテンプレートトリガーを作成し、ボタンと行の両方を処理します。それは仕事をするべきです。問題があれば元に戻してください。 – ViVi