Aracılığıyla paylaş


DataView'ları Değiştirme

temel alınan tablodaki DataView veri satırlarını eklemek, silmek veya değiştirmek için öğesini kullanabilirsiniz. temel tablodaki verileri değiştirmek için DataView özelliğini kullanma yeteneği, DataView'in üç Boole özelliğinden biri ayarlanarak kontrol edilir. Bu özellikler , AllowNewve AllowEditşeklindedirAllowDelete. Bunlar varsayılan olarak true ayarlanır.

AllowNew true ise, DataView yöntemi AddNew kullanarak yeni bir DataRowView oluşturabilirsiniz. DataRowView'nin EndEdit yöntemi çağrılana kadar temel alınan DataTable'ya gerçekten yeni bir satır eklenmediğini unutmayın. DataRowView öğesinin CancelEdit yöntemi çağrılırsa, yeni satır atılır. Ayrıca, aynı anda yalnızca bir tane DataRowView düzenleyebileceğinizi unutmayın. Eğer bekleyen bir satır varken DataRowView' nin AddNew veya BeginEdit yöntemini çağırırsanız, EndEdit bekleyen satırda otomatik olarak çağrılır. Çağrıldığında, değişiklikler temel alınan DataTable nesnesine uygulanır ve daha sonra AcceptChanges veya RejectChanges yöntemleri kullanılarak, DataTable, DataSet veya DataRow nesnesinde işlenebilir veya reddedilebilir. AllowNew false ise, DataRowView nesnesinin AddNew yöntemini çağırırsanız bir özel durum oluşturulur.

AllowEdit true ise, bir DataRowView aracılığıyla DataRow içeriğini değiştirebilirsiniz. DataRowView.EndEdit kullanarak temel satırdaki değişiklikleri onaylayabilir veya DataRowView.CancelEdit kullanarak değişiklikleri reddedebilirsiniz. Aynı anda yalnızca bir satırın düzenlenebileceğini unutmayın. Bekleyen bir satır mevcutken DataRowView'nin AddNew veya BeginEdit yöntemlerini çağırırsanız, EndEdit bekleyen satırda örtük olarak çağrılır. Çağrıldığında EndEdit, önerilen değişiklikler temel alınan DataRow satırının Current sürümüne yerleştirilir ve daha sonra DataTable, DataSet veya DataRow nesnesinin AcceptChanges veya RejectChanges yöntemleri kullanılarak işlenebilir veya reddedilebilir. AllowEdit false ise, DataView'da bir değeri değiştirmeye çalışırsanız bir özel durum oluşturulur.

Mevcut DataRowView düzenlendiğinde, altındaki DataTable olayları önerilen değişikliklerle yine harekete geçirilir. DataRow üzerinde EndEdit veya CancelEdit işlemini gerçekleştirirseniz, DataRow ile ilgili bekleyen değişiklikler, EndEdit üzerinde CancelEdit veya yapılmış olsun ya da olmasın, uygulanacak veya iptal edilecektir.

Eğer AllowDeletetrue ise, DataView veya DataRowView nesnesinin Delete yöntemini kullanarak DataView öğesinden satırları silebilirsiniz ve satırlar altta yatan DataTable'dan silinir. Daha sonra, AcceptChanges kullanarak silmeleri onaylayabilir veya RejectChanges kullanarak reddedebilirsiniz. AllowDelete false ise, DataView veya DataRowView yöntemini çağırırsanız bir özel durum oluşturulur.

Aşağıdaki kod örneği, satır silmek için öğesinin kullanılmasını DataView devre dışı bırakır ve DataView kullanarak temel tabloya yeni bir satır ekler.

Dim custTable As DataTable = custDS.Tables("Customers")
Dim custView As DataView = custTable.DefaultView
custView.Sort = "CompanyName"

custView.AllowDelete = False

Dim newDRV As DataRowView = custView.AddNew()
newDRV("CustomerID") = "ABCDE"
newDRV("CompanyName") = "ABC Products"
newDRV.EndEdit()
DataTable custTable = custDS.Tables["Customers"];
DataView custView = custTable.DefaultView;
custView.Sort = "CompanyName";

custView.AllowDelete = false;

DataRowView newDRV = custView.AddNew();
newDRV["CustomerID"] = "ABCDE";
newDRV["CompanyName"] = "ABC Products";
newDRV.EndEdit();

Ayrıca bakınız