0

選択モードが拡張されてdataGridいるので、多くの行を選択できます。

いくつかの条件に従って行の背景色を設定するために、多値コンバーターを備えたスタイルトリガーがあります。

さて、私のプローブでは、3 つのパラメータを渡します:ItemsSourceと. 次の動作に気付きました。SelectedItemsselectedItem

最初の行を選択すると、のItemsSourceすべての行がありdataGridます。正解です。SelectedItems0 個のアイテムがあり、selectedItemnull です。ただし、何もしないと、コードはコンバーターに 2 回目で入力されます。この場合、 でSelectedItem選択された項目ですが、項目dataGridSelectedItemsありません。

2 番目の行を選択するSelectedItemsと、最初に選択された行の 1 つの項目がdataGridありselectedItem、最初の行もあります。この場合、コードはコンバーターに 2 回目までには入力されません。

3 行目を選択するSelectedItemsと、1 行目と 2 行目が選択されていますが、3 行目は選択されていません。SelectedItem最初の行が選択されています。

したがって、SelectedItem常に最初の行が選択されSelectedItems、n-1 行が選択されていることがわかります。

しかし、現在選択されている行が何であるかを知るにはどうすればよいでしょうか? 新しい列?

4

1 に答える 1

2
<DataGrid SelectionMode="Extended" SelectionUnit="FullRow"></DataGrid>

selectionUnit は FullRow である必要があります。これが役立つことを願っています。

于 2012-07-28T13:36:59.407 に答える