次の方法で共有


DataRowVersion 列挙体

DataRow のバージョンを示します。

<Serializable>
Public Enum DataRowVersion
[C#]
[Serializable]
public enum DataRowVersion
[C++]
[Serializable]
__value public enum DataRowVersion
[JScript]
public
   Serializable
enum DataRowVersion

解説

Item 、または DataRow オブジェクトの GetChildRows を使用して DataRow にある値を検索するときに、 DataRowVersion 値が使用されます。

DataRowVersion は、存在する DataRow のバージョンを示します。バージョンは次の条件で変わります。

  • DataRow オブジェクトの BeginEdit メソッドを呼び出した後、値を変更すると、Current 値と Proposed 値が使用できるようになります。
  • DataRow オブジェクトの CancelEdit メソッドを呼び出すと、Proposed 値が削除されます。
  • DataRow オブジェクトの EndEdit メソッドを呼び出すと、Proposed 値が Current 値になります。
  • DataRow オブジェクトの AcceptChanges メソッドを呼び出すと、Original 値が Current 値と同じになります。
  • DataTable オブジェクトの AcceptChanges メソッドを呼び出すと、Original 値が Current 値と同じになります。
  • DataRow オブジェクトの RejectChanges を呼び出すと、Proposed 値が破棄され、そのバージョンが Current になります。

メンバ

メンバ名 説明
Current

.NET Compact Framework でもサポート。

この行には現在の値が格納されています。
Default

.NET Compact Framework でもサポート。

現在の行の DataRowState の既定バージョン。 DataRowState の値が AddedModified 、または Current の場合、既定バージョンは Current です。 DataRowStateDeleted の場合、既定バージョンは Original です。 DataRowState の値が Detached の場合、既定バージョンは Proposed です。
Original

.NET Compact Framework でもサポート。

この行には元の値が格納されています。
Proposed

.NET Compact Framework でもサポート。

この行には提示された値が格納されています。

使用例

[Visual Basic] AcceptChanges メソッドを呼び出す前に DataRowDataRowVersion を確認する例を次に示します。

 
Private Sub CheckVersionBeforeAccept()
   Dim r As DataRow
   Dim t As DataTable
   t = CType(DataGrid1.DataSource, DataTable)
   ' The user must click a cell to edit in the DataGrid control.
   r = t.Rows(DataGrid1.CurrentCell.RowNumber)
   r.BeginEdit
   ' Change the value of column 1 in the row.
   r(1) = Edit1.Text
   ' Compare the proposed version with the current.
   If r.HasVersion(datarowversion.Proposed) Then
      If r(1, DataRowVersion.Current) Is r(1, DataRowversion.Proposed) Then
         MessageBox.Show("The original and the proposed are the same")
         r.CancelEdit
         Exit Sub
      Else
         r.AcceptChanges
         ' Print the original 
      End If
   Else
      MessageBox.Show("No new values proposed")
   End If
End Sub

[C#, C++, JScript] C#、C++、および JScript のサンプルはありません。Visual Basic のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System.Data

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

アセンブリ: System.Data (System.Data.dll 内)

参照

System.Data 名前空間 | AcceptChanges | BeginEdit | EndEdit | Item | RejectChanges