DataRowView Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
özelleştirilmiş bir görünümünü DataRowtemsil 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, RowVersion içindeki 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 , Original
Current
ve Proposed
olmak üzere Default
dört farklı sürüm durumlarından birine sahip olabilir.
üzerinde çağrıldıktan BeginEdit sonra, düzenlenen tüm değerler değer olurProposed
.DataRow 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 Original
geri 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
DataView |
Bu satırın DataView ait olduğu değeri 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 bir sütunda bir değeri alır veya ayarlar. |
Item[String] |
Belirtilen bir sütunda bir değeri alır veya ayarlar. |
Row |
DataRow Görüntüleneni alır. |
RowVersion |
öğesinin geçerli sürüm açıklamasını DataRowalır. |
Yöntemler
BeginEdit() |
Düzenleme yordamını başlatır. |
CancelEdit() |
Düzenleme yordamını iptal eder. |
CreateChildView(DataRelation) |
Belirtilen DataRelationalt öğeye sahip alt öğe DataTable için bir DataView döndürür. |
CreateChildView(DataRelation, Boolean) |
Belirtilen DataRelation 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. |
CreateChildView(String, Boolean) |
Belirtilen DataRelation ada ve üst öğeye sahip alt öğe DataTable için bir DataView döndürür. |
Delete() |
Satırı siler. |
EndEdit() |
Değişiklikleri temel alınana DataRow işler ve ile BeginEdit()başlayan düzenleme oturumunu sonlandırır. dosyasında yapılan değişiklikleri atmak için DataRowkullanınCancelEdit(). |
Equals(Object) |
Geçerli DataRowView değerin belirtilen nesneyle aynı olup olmadığını belirten bir değer alır. |
GetHashCode() |
Nesnesinin karma kodunu DataRow döndürür. |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Ekinlikler
PropertyChanged |
Bir DataRowView özellik değiştirildiğinde tetiklenen olay. |
Belirtik Arabirim Kullanımları
ICustomTypeDescriptor.GetAttributes() |
Bir bileşenin bu örneği için özel özniteliklerden oluşan bir koleksiyon 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 tür dönüştürücüsü 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ği için özellikleri 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 nesnesi döndürür. |
IDataErrorInfo.Error |
Nesne için doğrulama hatalarını açıklayan bir ileti alır. |
IDataErrorInfo.Item[String] |
Verilen ada sahip özelliğ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. Mevcut yazma işlemlerini eşitlemeniz gerekir.