0

私は非常に単純なことをしようとしていますが、それを行う効果的な方法を見つけることができません。DataGrid を持つ WPF アプリケーションがあります。DataGrid に (SQL Server CE 3.5 データベース内の) テーブルのすべてのエントリを表示させたいと考えています。その部分は、DataGrid の ItemsSource を設定することで簡単に実行できます。

ここで、ユーザーがグリッドの最後の行にデータを入力するだけの組み込み機能を使用して行を追加できるようにする必要があります。

私のテーブルには、Idテーブルの PK である列があります ( IdentitySQL Server CE 3.5 は EF でサポートしていないため、列ではありません)。Idそのため、新しいアイテムを入力するたびに最大値を計算する必要があります。

その単純なことを達成するために DataGrid イベントに苦労していますが、道を見つけることができません。誰かがそれを行う方法の例を持っていますか?

ありがとう

4

1 に答える 1

1

イベントにご利用いただけますInitializingNewItem。には、データの型にキャストしてそのキー値を設定できるInitializingNewItemEventArgsプロパティ(オブジェクト) があります。NewItem一度最大値を取得して、メモリ内でインクリメントしたい場合があります。

これは、新しいオブジェクトが作成される唯一の場所だと思いますが (SQL-CE であるため、同時実行性がないため)、アプリケーション内にこれが発生する可能性のある別の場所がある場合は、一意のキーを確保する必要があります。

于 2012-04-13T19:10:42.897 に答える