Aracılığıyla paylaş


DataRowView Sınıf

Tanım

özelleştirilmiş bir DataRowgörünümünü temsil eder.

public ref class DataRowView : System::ComponentModel::ICustomTypeDescriptor, System::ComponentModel::IDataErrorInfo, System::ComponentModel::IEditableObject, System::ComponentModel::INotifyPropertyChanged
public ref class DataRowView : System::ComponentModel::ICustomTypeDescriptor, System::ComponentModel::IDataErrorInfo, System::ComponentModel::IEditableObject
public class DataRowView : System.ComponentModel.ICustomTypeDescriptor, System.ComponentModel.IDataErrorInfo, System.ComponentModel.IEditableObject, System.ComponentModel.INotifyPropertyChanged
public class DataRowView : System.ComponentModel.ICustomTypeDescriptor, System.ComponentModel.IDataErrorInfo, System.ComponentModel.IEditableObject
type DataRowView = class
    interface ICustomTypeDescriptor
    interface IDataErrorInfo
    interface IEditableObject
    interface INotifyPropertyChanged
type DataRowView = class
    interface ICustomTypeDescriptor
    interface IEditableObject
    interface IDataErrorInfo
type DataRowView = class
    interface ICustomTypeDescriptor
    interface IEditableObject
    interface IDataErrorInfo
    interface INotifyPropertyChanged
Public Class DataRowView
Implements ICustomTypeDescriptor, IDataErrorInfo, IEditableObject, INotifyPropertyChanged
Public Class DataRowView
Implements ICustomTypeDescriptor, IDataErrorInfo, IEditableObject
Devralma
DataRowView
Uygulamalar

Örnekler

Aşağıdaki örnek, içindeki RowVersion bir satırın DataRowViewdurumunu belirlemek için özelliğini kullanır. (kullanarak başka bir örnek DataRowViewiçin bkzRowFilter. .)

private static void DemonstrateRowVersion()
{
    // Create a DataTable with one column.
    DataTable table = new DataTable("Table");
    DataColumn column = new DataColumn("Column");
    table.Columns.Add(column);

    // Add ten rows.
    DataRow row;
    for (int i = 0; i < 10; i++)
    {
        row = table.NewRow();
        row["Column"] = "item " + i;
        table.Rows.Add(row);
    }

    table.AcceptChanges();
    // Create a DataView with the table.
    DataView view = new DataView(table);

    // Change one row's value:
    table.Rows[1]["Column"] = "Hello";

    // Add one row:
    row = table.NewRow();
    row["Column"] = "World";
    table.Rows.Add(row);

    // Set the RowStateFilter to display only added
    // and modified rows.
    view.RowStateFilter = DataViewRowState.Added |
        DataViewRowState.ModifiedCurrent;

    // Print those rows. Output includes "Hello" and "World".
    PrintView(view, "ModifiedCurrent and Added");

    // Set filter to display only originals of modified rows.
    view.RowStateFilter = DataViewRowState.ModifiedOriginal;
    PrintView(view, "ModifiedOriginal");

    // Delete three rows.
    table.Rows[1].Delete();
    table.Rows[2].Delete();
    table.Rows[3].Delete();

    // Set the RowStateFilter to display only deleted rows.
    view.RowStateFilter = DataViewRowState.Deleted;
    PrintView(view, "Deleted");

    // Set filter to display only current rows.
    view.RowStateFilter = DataViewRowState.CurrentRows;
    PrintView(view, "Current");

    // Set filter to display only unchanged rows.
    view.RowStateFilter = DataViewRowState.Unchanged;
    PrintView(view, "Unchanged");

    // Set filter to display only original rows.
    // Current values of unmodified rows are also returned.
    view.RowStateFilter = DataViewRowState.OriginalRows;
    PrintView(view, "OriginalRows");
}

private static void PrintView(DataView view, string label)
{
    Console.WriteLine("\n" + label);
    for (int i = 0; i < view.Count; i++)
    {
        Console.WriteLine(view[i]["Column"]);
        Console.WriteLine("DataViewRow.RowVersion: {0}",
            view[i].RowVersion);
    }
}
Private Sub DemonstrateRowVersion()
    Dim i As Integer
    ' Create a DataTable with one column.
    Dim table As New DataTable("Table")
    Dim column As New DataColumn("Column")
    table.Columns.Add(column)

    ' Add ten rows.
    Dim row As DataRow
    For i = 0 To 9
        row = table.NewRow()
        row("Column") = "item " + i.ToString()
        table.Rows.Add(row)
    Next i
    table.AcceptChanges()

    ' Create a DataView with the table.
    Dim view As New DataView(table)

    ' Change one row's value:
    table.Rows(1)("Column") = "Hello"

    ' Add one row:
    row = table.NewRow()
    row("Column") = "World"
    table.Rows.Add(row)

    ' Set the RowStateFilter to display only added and modified rows.
    view.RowStateFilter = _
       DataViewRowState.Added Or DataViewRowState.ModifiedCurrent

    ' Print those rows. Output includes "Hello" and "World".
    PrintView(view, "ModifiedCurrent and Added")

    ' Set filter to display only originals of modified rows.
    view.RowStateFilter = DataViewRowState.ModifiedOriginal
    PrintView(view, "ModifiedOriginal")

    ' Delete three rows.
    table.Rows(1).Delete()
    table.Rows(2).Delete()
    table.Rows(3).Delete()

    ' Set the RowStateFilter to display only deleted rows.
    view.RowStateFilter = DataViewRowState.Deleted
    PrintView(view, "Deleted")

    ' Set filter to display only current rows.
    view.RowStateFilter = DataViewRowState.CurrentRows
    PrintView(view, "Current")

    ' Set filter to display only unchanged rows.
    view.RowStateFilter = DataViewRowState.Unchanged
    PrintView(view, "Unchanged")

    ' Set filter to display only original rows.
    ' Current values of unmodified rows are also returned.
    view.RowStateFilter = DataViewRowState.OriginalRows
    PrintView(view, "OriginalRows")
End Sub

Private Sub PrintView(ByVal view As DataView, ByVal label As String)
    Console.WriteLine(ControlChars.Cr + label)
    Dim i As Integer
    For i = 0 To view.Count - 1
        Console.WriteLine(view(i)("Column"))
        Console.WriteLine("DataRowView.RowVersion: {0}", _
            view(i).RowVersion)
    Next i
End Sub

Açıklamalar

Denetimde DataGrid olduğu gibi veriler her görüntülendiğinde, her satırın yalnızca bir sürümü görüntülenebilir. Görüntülenen satır bir DataRowViewşeklindedir.

, DataRowView , OriginalCurrentve Proposedolmak üzere Defaultdört farklı sürüm durumlarından birine sahip olabilir.

üzerinde çağrıldıktan BeginEdit sonra, düzenlenen herhangi bir DataRowdeğer değer olur Proposed . CancelEdit veya EndEdit çağrılana kadar, satırın bir Original ve Proposed sürümü vardır. Çağrılırsa CancelEdit , önerilen sürüm atılır ve değer değerine Originalgeri döner. Çağrılırsa EndEdit , DataRowView artık bir Proposed sürümü yoktur; bunun yerine, önerilen değer geçerli değer olur. Varsayılan değerler yalnızca varsayılan değerleri tanımlanmış sütunları olan satırlarda kullanılabilir.

Özellikler

Name Description
DataView

Bu satırın DataView ait olduğu satırı alır.

IsEdit

Satırın düzenleme modunda olup olmadığını gösterir.

IsNew

a'nın DataRowView yeni olup olmadığını gösterir.

Item[Int32]

Belirtilen sütundaki bir değeri alır veya ayarlar.

Item[String]

Belirtilen sütundaki bir değeri alır veya ayarlar.

Row

Görüntüleneni DataRow alır.

RowVersion

öğesinin geçerli sürüm açıklamasını DataRowalır.

Yöntemler

Name Description
BeginEdit()

Düzenleme yordamını başlatır.

CancelEdit()

Düzenleme yordamını iptal eder.

CreateChildView(DataRelation, Boolean)

Belirtilen DataRelation ve üst öğeye sahip alt öğe DataTable için bir DataView döndürür.

CreateChildView(DataRelation)

Belirtilen alt öğeye sahip alt öğe DataTableDataRelationiçin bir DataView döndürür.

CreateChildView(String, Boolean)

Belirtilen DataRelation ada ve üst öğeye sahip alt öğe DataTable için bir DataView döndürür.

CreateChildView(String)

Belirtilen DataRelation alt ada sahip alt öğe DataTable için bir DataView döndürür.

Delete()

Bir satırı siler.

EndEdit()

Değişiklikleri temel alınana DataRow işler ve ile BeginEdit()başlayan düzenleme oturumunu sonlandırır. 'de yapılan değişiklikleri atmak için DataRowkullanınCancelEdit().

Equals(Object)

Geçerli DataRowView değerin belirtilen nesneyle aynı olup olmadığını gösteren bir değer alır.

GetHashCode()

Nesnesinin karma kodunu DataRow döndürür.

GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Ekinlikler

Name Description
PropertyChanged

Bir DataRowView özellik değiştirildiğinde tetiklenen olay.

Belirtik Arabirim Kullanımları

Name Description
ICustomTypeDescriptor.GetAttributes()

Bir bileşenin bu örneği için özel öznitelikler koleksiyonunu döndürür.

ICustomTypeDescriptor.GetClassName()

Bir bileşenin bu örneğinin sınıf adını döndürür.

ICustomTypeDescriptor.GetComponentName()

Bir bileşenin bu örneğinin adını döndürür.

ICustomTypeDescriptor.GetConverter()

Bir bileşenin bu örneği için bir tür dönüştürücü döndürür.

ICustomTypeDescriptor.GetDefaultEvent()

Bir bileşenin bu örneği için varsayılan olayı döndürür.

ICustomTypeDescriptor.GetDefaultProperty()

Bir bileşenin bu örneği için varsayılan özelliği döndürür.

ICustomTypeDescriptor.GetEditor(Type)

Bir bileşenin bu örneği için belirtilen türde bir düzenleyici döndürür.

ICustomTypeDescriptor.GetEvents()

Bir bileşenin bu örneği için olayları döndürür.

ICustomTypeDescriptor.GetEvents(Attribute[])

Belirtilen özniteliklere sahip bir bileşenin bu örneği için olayları döndürür.

ICustomTypeDescriptor.GetProperties()

Bir bileşenin bu örneğinin özelliklerini döndürür.

ICustomTypeDescriptor.GetProperties(Attribute[])

Belirtilen özniteliklere sahip bir bileşenin bu örneğinin özelliklerini döndürür.

ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

Belirtilen özellik tanımlayıcısı tarafından açıklanan özelliği içeren bir nesne döndürür.

IDataErrorInfo.Error

Nesne için doğrulama hatalarını açıklayan bir ileti alır.

IDataErrorInfo.Item[String]

Belirtilen ada sahip özelliği için hata iletisini alır.

Şunlara uygulanır

İş Parçacığı Güvenliği

Bu tür, çok iş parçacıklı okuma işlemleri için güvenlidir. Tüm yazma işlemlerini eşitlemeniz gerekir.

Ayrıca bkz.