0

アイテムの監視可能なコレクションと2つのボタンにバインドされたDataGridを備えたユーザーコントロールがあります。変更を保存し、変更を破棄します。

私の問題は、ユーザーがデータグリッド行を編集しているとき、ボタンはクリック可能のままですが、実行されないことです。

DataGrid が編集モードのときにボタンを無効にする方法はありますか?

このコードを試してみましたが、成功しませんでした:

<Button Content="SaveChanges" Command="{Binding Path=CmdSaveChanges}" 
                IsEnabled="{Binding ElementName=MyDataGrid, Path=IsEditing, Converter={StaticResource InverseBooleanConverter}}" />
4

1 に答える 1

1

おそらくDataGridであるIsEditingという名前の要素のプロパティにバインドしています。MyDataGridただし、DataGrid にはそのようなプロパティはありません。

DataGridCellにはIsEditingプロパティがありますが、現在編集中のセルを取得する簡単な方法はありません。DataGrid.CurrentCellは DataGridCell を提供しませんが、 DataGridCellInfoのみを提供します。

おそらく、DataGrid のBeginningEditおよびCellEditEndingイベントにハンドラーをアタッチしたほうがよいでしょう。

于 2012-05-09T10:55:47.533 に答える