MFC アプリケーションで OLE DB 行セットデータを表示する場合は、MFC クラス COleDBRecordView を使用します。 COleDBRecordView
から作成されたレコード ビュー オブジェクトを使用すると、MFC コントロール内にデータベース レコードを表示できます。 レコード ビューは、CRowset
テンプレート クラスから作成された OLE DB 行セット オブジェクトに直接接続されたダイアログ フォーム ビューです。 行セット オブジェクトへのハンドルの取得は簡単です。
COleDBRecordView myRecordView;
...
// CProductAccessor is a user record class
CRowset<CAccessor<CProductAccessor>> myRowSet = myRecordView.OnGetRowset();
ビューには、ダイアログのコントロール内の CRowset
オブジェクトのフィールドが表示されます。 COleDBRecordView
オブジェクトは、ダイアログ データ エクスチェンジ (DDX) と、CRowset
に組み込まれているナビゲーション機能 (MoveFirst
、MoveNext
、MovePrev
、MoveLast
) を使用して、フォーム上のコントロールと行セットのフィールドの間でのデータの移動を自動化します。 COleDBRecordView
は、レコード ビューがユーザー インターフェイスを更新し、別のレコードに移動する前に現在のレコードを更新するための OnMove メソッドを提供できるように、行セット内のユーザーの位置を追跡します。
DDX 関数を COleDbRecordView
と共に使用すると、データベース レコードセットから直接データを取得し、それをダイアログ コントロールに表示できます。 DDX_Field* 関数 (DDX_FieldText
など) ではなく DDX_* メソッド (DDX_Text
など) を COleDbRecordView
と共に使用してください。