3

次のコードのように、カスタム コレクションから DataRow 型変数に値を渡そうとします。

GridHitInfo downHitInfo = null;
DataRow row = gridView3.GetDataRow(downHitInfo.RowHandle);

しかし、私が知っているように、ビューのデータ ソースがオブジェクトのカスタム コレクションである場合、GetDataRowメソッドはnull(Visual Basic では Nothing) を返します。ビューのデータがSystem.Data.DataTableまたはによって提供される場合System.Data.DataView objectSystem.Data.DataRow object特定の行を表す が返されます。

XPCollection は「オブジェクトのカスタム コレクション」です。

値を取得するためにできる方法はありますか

gridView3.GetDataRow(downHitInfo.RowHandle)?

コンバーターなど必要なものはありますか?

4

1 に答える 1

1

基になるグリッドのデータソースがDataTableまたはDataViewでない場合、DataRowオブジェクトを取得することはできません。データソースのタイプがXPCollectionの場合、グリッド行に対応するオブジェクトを取得するには、 GetDataRow()メソッドの代わりにGetRow()メソッドを使用する必要があります。

var xpCollection = new XPCollection<Person>();
gridControl1.DataSource = xpCollection;
//...
Person person = (Person)gridView1.GetRow(rowHandle);
于 2012-10-08T06:01:06.470 に答える