コードを使用してバインディング ソースの列の値を更新するにはどうすればよいですか?
私はこれに似た何かをしようとしています:
CustomersBindingSource.AddNew();
CustomersBindingSource.Current["CustomerID"] = Guid.NewGuid();
このコードは現在、「タイプ 'オブジェクト' の式に [] を使用したインデックスを適用できません」というエラーを示しています。
これを書き直す助けがあれば大歓迎です!
コードを使用してバインディング ソースの列の値を更新するにはどうすればよいですか?
私はこれに似た何かをしようとしています:
CustomersBindingSource.AddNew();
CustomersBindingSource.Current["CustomerID"] = Guid.NewGuid();
このコードは現在、「タイプ 'オブジェクト' の式に [] を使用したインデックスを適用できません」というエラーを示しています。
これを書き直す助けがあれば大歓迎です!
BindingSourceのCurrentプロパティは、それが返すもので非常に一般的です:typeobject。オブジェクトはインデクサーを定義しないため、[]は機能しません。あなたがする必要があるのは、Currentプロパティをそれが実際にあるものの(より具体的な)タイプにキャストすることです。
たとえば、Currentが実際にDataRowViewである場合、次のように記述できます。
DataRowView current = (DataRowView)CustomersBindingSource.Current;
current["CustomerID"] = Guid.NewGuid();
これがお役に立てば幸い、
ベン