DataRowState 枚举

获取 DataRow 对象的状态。

此枚举有一个 FlagsAttribute 属性,允许其成员值按位组合。

**命名空间:**System.Data
**程序集:**System.Data(在 system.data.dll 中)

语法

声明
<FlagsAttribute> _
Public Enumeration DataRowState
用法
Dim instance As DataRowState
[FlagsAttribute] 
public enum DataRowState
[FlagsAttribute] 
public enum class DataRowState
/** @attribute FlagsAttribute() */ 
public enum DataRowState
FlagsAttribute 
public enum DataRowState

成员

  成员名称 说明
由 .NET Compact Framework 支持 Added 该行已添加到 DataRowCollection 中,AcceptChanges 尚未调用。 
由 .NET Compact Framework 支持 Deleted 该行已通过 DataRowDelete 方法被删除。 
由 .NET Compact Framework 支持 Detached 该行已被创建,但不属于任何 DataRowCollectionDataRow 在以下情况下立即处于此状态:创建之后添加到集合中之前;或从集合中移除之后。 
由 .NET Compact Framework 支持 Modified 该行已被修改,AcceptChanges 尚未调用。 
由 .NET Compact Framework 支持 Unchanged 该行自上次调用 AcceptChanges 以来尚未更改。 

备注

DataRowState 枚举由 DataRow 类的 RowState 属性返回。

示例

下面的示例首先创建有一个列的新 DataTable,然后创建一个 DataRow。当创建、添加、修改和删除 DataRow 时,将输出其 RowState

Private Sub DemonstrateRowState()
    'Run a function to create a DataTable with one column.
    Dim dataTable As DataTable = MakeTable()
    Dim dataRow As DataRow

    ' Create a new DataRow.
    dataRow = dataTable.NewRow()
    ' Detached row.
    Console.WriteLine(String.Format("New Row {0}", dataRow.RowState))

    dataTable.Rows.Add(dataRow)
    ' New row.
    Console.WriteLine(String.Format("AddRow {0}", dataRow.RowState))

    dataTable.AcceptChanges()
    ' Unchanged row.
    Console.WriteLine(String.Format("AcceptChanges {0}", dataRow.RowState))

    dataRow("FirstName") = "Scott"
    ' Modified row.
    Console.WriteLine(String.Format("Modified {0}", dataRow.RowState))

    dataRow.Delete()
    ' Deleted row.
    Console.WriteLine(String.Format("Deleted {0}", dataRow.RowState))
End Sub

Private Function MakeTable() As DataTable
    ' Make a simple table with one column.
    Dim dt As New DataTable("dataTable")
    Dim firstName As New DataColumn("FirstName", _
       Type.GetType("System.String"))
    dt.Columns.Add(firstName)
    Return dt
End Function
private void DemonstrateRowState() {
   //Run a function to create a DataTable with one column.
   DataTable myTable = MakeTable();
   DataRow myRow;

   // Create a new DataRow.
   myRow = myTable.NewRow();
   // Detached row.
   Console.WriteLine("New Row " + myRow.RowState);

   myTable.Rows.Add(myRow);
   // New row.
   Console.WriteLine("AddRow " + myRow.RowState);

   myTable.AcceptChanges();
   // Unchanged row.
   Console.WriteLine("AcceptChanges " + myRow.RowState);

   myRow["FirstName"] = "Scott";
   // Modified row.
   Console.WriteLine("Modified " + myRow.RowState);

   myRow.Delete();
   // Deleted row.
   Console.WriteLine("Deleted " + myRow.RowState);
}

private DataTable MakeTable(){
   // Make a simple table with one column.
   DataTable dt = new DataTable("myTable");
   DataColumn dcFirstName = new DataColumn("FirstName", Type.GetType("System.String"));
   dt.Columns.Add(dcFirstName);
   return dt;
}

平台

Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

.NET Compact Framework

受以下版本支持:2.0、1.0

请参见

参考

System.Data 命名空间
DataRow 类
Delete
NewRow
DataRowCollection 类