関連するデータ項目を主キー (この場合はユーザーのイニシャル) として使用するバッキング データベースの特定のテーブルを使用しています。これは私には変えられません。それはレガシーなデザインなので、私はそれに固執しています。しかし、それは関連しているため、私が使用している DataGrid に表示する必要があります (ObjectContext を介してデータベースのテーブルにバインドされます)。
残念ながら、これは、ユーザーが既存のレコードのイニシャルを編集しようとすると、このテーブルに対応するエンティティのエンティティ キーを編集しようとしているため、例外がスローされることを意味します。
彼らはその列を編集する必要がなく、実際に編集すべきではないため、通常の状況では、列を読み取り専用としてマークするだけです。問題は、テーブルに新しいレコードを入力できるようにする必要があることですが、列を読み取り専用としてマークすると、「新しい行」にイニシャルを入力できなくなります。また。
「新しい行」のセルを除いて、この列のすべてのセルを読み取り専用にするにはどうすればよいですか?
(または、ここでの私のアプローチ全体は根本的に間違っています-テーブルを変更することはできず、このフィールドは存在し、更新可能ではありませんが、ユーザーが挿入できる必要があることを念頭に置いていますか?)