[ JoinView ] 複数の DataTable 間で親子のリレーションシップで連結された情報を提供する View クラスライブラリ

【概要】

  DataSet に格納された複数の DataTable 間が親子のリレーションシップ(Relation)で連結されているデータソースを、1つのデータビュー(JoinView)として扱う機能を提供するクラスライブラリです。
 親 DataRow にリンクする複数の DataRow を同一行に連結して表示し、追加・更新・削除の機能を提供します。
 また、標準のDataViewと同様に、DataGridに連結することが可能で、Relationで連結された複数のDataTableを一つのDataGrid上に表示することができます。

【特徴】

  ・親子のリレーションシップで連結された複数の DataTable を1つのデータビュー(JoinView)として扱うことができます。
  ・JoinView はコントロールの DataSource として利用することができます。
  ・JoinView の各列には、以下の列名または列番号でアクセスすることができます。
       ・列名  : DataTable名 + "_" + 個々の列名
       ・列番号: 連結した列の0から始まる通し番号
  ・JoinView の各行は、追加・更新・削除することができます。
  ・JoinView の行追加時の子データ行(DataRow)の追加方法は、以下の何れかを指定できます。
       ・行追加と同時に子データ行(DataRow)を生成する。入力がなくても空のデータ行を生成する。
       ・行追加後に子データ行(DataRow)の何れかのフィールドに値を設定した時点で生成する。入力がなければ生成しない。
  ・JoinView の各行には、レコード番号でアクセスすることができ、データ行( JoinRowView )を取得できます。
  ・JoinRowView は、リンクする複数のDataRowを連結したビュー表します。
  ・JoinRowView は、DataRowView と同様に4 種類のバージョン状態のいずれか 1 つをとることができます。
       ・4 種類のバージョン状態 : Default、Original、Current、および Proposed
  ・JoinRowView は、リンクする子データ行が未設定のデータを扱うことができます。この時、DBNull.Valueを返します。
  また、データ設定時に新規に子データ行を生成します。
  ・JoinView の各行は、並び替えができます。
ダウンロード (JoinView.lzh、17.3KB : C#.NETソースコード)
【 JoinView 】
カスタムプロパティ 説  明
AllowDelete 削除できるかどうかを示す値を取得または設定します。
AllowEdit 編集できるかどうかを示す値を取得または設定します。
AllowNew 新しい行を追加できるかどうかを示す値を取得または設定します。
AllowSort 並び替えできるかどうかを示す値を取得または設定します。
Columns 連結する列情報コレクションを表すオブジェクトを取得します。
Container コンポーネントを格納するコンテナを取得します。
Count JoinView 内のレコード数を取得します。
DataSet 対象とするデータソースが所属する DataSet を取得します。
DataSource 対象とするデータの内、親となるデータソースを取得または設定します。(DataTableまたはDataView)
DataTable 対象とするデータの内、親となる DataTable を取得します。
DesignMode コンポーネントが現在デザイン モードかどうかを示す値を取得します。
Item 指定したインデックスにある JoinRowView を取得します。
Site コンポーネントのサイトを取得または設定します。
Sort 並べ替え列と並べ替え順序を取得または設定します。
Tables 連結するテーブル情報コレクションを表すオブジェクトを取得します。

カスタムメソッド 説  明
AddNew JoinView に新しい行を追加します。
BeginInit フォームまたは別のコンポーネントで使用する JoinView の初期化を開始します。
Delete 指定したインデックス位置にある行を削除します。
Dispose MarshalByValueComponent によって使用されているリソースを解放します。
EndInit フォームまたは別のコンポーネントで使用する JoinView の初期化を終了します。
Equals 2 つの Object インスタンスが等しいかどうかを判断します。
Find 指定された Object を保持する行のインデックスを取得します。
GetEnumerator コレクションを反復処理できる列挙子を取得します。
GetType 現在のインスタンスの Type を取得します。
ToString 現在の Object を表す String を返します。

カスタムイベント 説  明
Disposed コンポーネントの Disposed イベントを待機するイベント ハンドラを追加します。
ListChanged JoinView で管理されるリストが変更されるときに発生します。
【 JoinRowView 】
カスタムプロパティ 説  明
ChildRows 連結する子オブジェクト(DataRow)配列を取得します。
HasErrors エラーがあるかどうかを示す値を取得します。
Item 指定した列番号(列名)に格納されているデータを取得または設定します。
JoinView 所属する親オブジェクト(JoinView)を取得します。
ParentRow 基準となる親オブジェクト(DataRow)を取得します。
RowError カスタム エラー説明を取得します。
RowState 行の現在の状態を取得します。

カスタムメソッド 説  明
AcceptChanges 前回 AcceptChanges を呼び出した以降にこの行に対して行われたすべての変更をコミットします。
BeginEdit JoinRowViewオブジェクトの編集を開始します。
CancelEdit JoinRowViewオブジェクトの編集をキャンセルします。
Delete JoinRowViewオブジェクトを削除します。
EndEdit JoinRowViewオブジェクトの編集を終了します。
Equals 2 つの Object インスタンスが等しいかどうかを判断します。
GetType 現在のインスタンスの Type を取得します。
IsNull 指定した列名(インデックス位置にある列)に null 値が格納されているかどうかを示す値を取得します。
RejectChanges 前回 AcceptChanges を呼び出した以降にこの行に対して行われたすべての変更を拒否します。
ToString 現在の Object を表す String を返します。

【補足】

  このデータビュー(JoinView)は、親データにリンクする子データが単独または未設定のデータソースを対象にしています。
【利用法】
このライブラリは、システム開発に利用できるように、.NET 上のクラスライブラリとして作られています。
単独の DLL として参照設定して利用するか、プロジェクト内に追加して利用してください。
【注意】 このライブラリを利用する場合、利用規約を確認してください。
Home | Library | 戻る