IEditableCollectionView Arabirim

Tanım

Bir CollectionView koleksiyona düzenleme özellikleri sağlamak için uygulanan yöntemleri ve özellikleri tanımlar.

public interface class IEditableCollectionView
public interface IEditableCollectionView
type IEditableCollectionView = interface
Public Interface IEditableCollectionView
Türetilmiş

Örnekler

Aşağıdaki örnekte tarafından IEditableCollectionViewtanımlanan yöntemler kullanılarak bir koleksiyona bir öğenin nasıl ekleneceği gösterilmektedir. Bu uygulama, satılık öğelerin listesini görüntüler ve kullanıcıya bir öğe ekleme, düzenleme veya kaldırma seçeneği sunar. Kullanıcı bir öğeyi eklediğinde veya düzenlediğinde, form kullanıcıdan yeni bir öğe girmesini ister. Kullanıcı formu gönderirse, öğe koleksiyona işlenir. Kullanıcı formu iptal ederse, öğe atılır. Örneğin tamamı için bkz. IEditableCollectionView Örneği Kullanarak Bir Koleksiyonu Değiştirme.

IEditableCollectionView editableCollectionView = 
    itemsControl.Items as IEditableCollectionView; 

if (!editableCollectionView.CanAddNew)
{
    MessageBox.Show("You cannot add items to the list.");
    return;
}

// Create a window that prompts the user to enter a new
// item to sell.
ChangeItemWindow win = new ChangeItemWindow();

//Create a new item to be added to the collection.
win.DataContext = editableCollectionView.AddNew();

// If the user submits the new item, commit the new
// object to the collection.  If the user cancels 
// adding the new item, discard the new item.
if ((bool)win.ShowDialog())
{
    editableCollectionView.CommitNew();
}
else
{
    editableCollectionView.CancelNew();
}
Dim editableCollectionView As IEditableCollectionView = TryCast(itemsControl.Items, IEditableCollectionView)

If Not editableCollectionView.CanAddNew Then
    MessageBox.Show("You cannot add items to the list.")
    Return
End If

' Create a window that prompts the user to enter a new
' item to sell.
Dim win As New ChangeItemWindow()

'Create a new item to be added to the collection.
win.DataContext = editableCollectionView.AddNew()

' If the user submits the new item, commit the new
' object to the collection.  If the user cancels 
' adding the new item, discard the new item.
If CBool(win.ShowDialog()) Then
    editableCollectionView.CommitNew()
Else
    editableCollectionView.CancelNew()
End If

Açıklamalar

Bir koleksiyon görünümü arabirimini uyguladığında IEditableCollectionView , koleksiyonun türünden bağımsız olarak kullanıma sunan yöntemleri ve özellikleri IEditableCollectionView kullanarak değişikliklerin yapılmasına izin veriyorsa, temel koleksiyonu doğrudan değiştirebilirsiniz.

, BindingListCollectionViewve ListCollectionView türleriItemCollection, 'den CollectionViewdevralan Windows Presentation Foundation (WPF) ile birlikte gelen türlerdir. Bu türler, bu türlerden birini kullanan bir koleksiyonu düzenleyebilmeniz için de uygulamasını uygular IEditableCollectionView. ItemCollectionözelliği bir ItemCollectionolduğundanItemsControl.Items, özellikle genellikle kullanılır.

Özellikler

CanAddNew

Koleksiyona yeni bir öğe eklenip eklenemeyeceğini belirten bir değer alır.

CanCancelEdit

Koleksiyon görünümünün bekleyen değişiklikleri atıp atamayacağını ve düzenlenen bir nesnenin özgün değerlerini geri yükleyip geri yükleyemeyeceğini belirten bir değer alır.

CanRemove

Bir öğenin koleksiyondan kaldırılıp kaldırılamayacağını belirten bir değer alır.

CurrentAddItem

Geçerli ekleme işlemi sırasında eklenen öğeyi alır.

CurrentEditItem

Düzenlenmekte olan koleksiyondaki öğeyi alır.

IsAddingNew

Bir ekleme işleminin devam edip etmediğini gösteren bir değer alır.

IsEditingItem

Düzenleme işleminin devam edip etmediğini gösteren bir değer alır.

NewItemPlaceholderPosition

Koleksiyon görünümünde yeni öğe yer tutucusunun konumunu alır veya ayarlar.

Yöntemler

AddNew()

Koleksiyona yeni bir öğe ekler.

CancelEdit()

Düzenleme işlemini sonlandırır ve mümkünse özgün değeri öğeye geri yükler.

CancelNew()

Ekleme işlemini sonlandırır ve bekleyen yeni öğeyi atar.

CommitEdit()

Düzenleme işlemini sonlandırır ve bekleyen değişiklikleri kaydeder.

CommitNew()

Ekleme işlemini sonlandırır ve bekleyen yeni öğeyi kaydeder.

EditItem(Object)

Belirtilen öğenin düzenleme işlemini başlatır.

Remove(Object)

Belirtilen öğeyi koleksiyondan kaldırır.

RemoveAt(Int32)

Belirtilen konumdaki öğeyi koleksiyondan kaldırır.

Şunlara uygulanır