ICancelAddNew Rozhraní
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přidá transakční schopnost při přidávání nové položky do kolekce.
public interface class ICancelAddNew
public interface ICancelAddNew
type ICancelAddNew = interface
Public Interface ICancelAddNew
- Odvozené
Poznámky
Rozhraní ICancelAddNew umožňuje kolekci přidat novou položku rozšiřitelným způsobem. Nová položka může být následně potvrzena nebo vrácena zpět. AddNew Metoda kolekce se používá k nezávazně přidání položky, která se následně provede pomocí následujících operací:
Metoda EndNew explicitně potvrdí čekající přidání.
Provedení jiné operace shromažďování, například vložení, odebrání nebo přesunutí, implicitně potvrdí nevyřízené přidání.
Metoda CancelNew vrátí nevyřízené přidání, pokud ještě nebyla potvrzena.
Note
V některých scénářích, jako je například model Windows Forms složitá datová vazba, může kolekce přijímat CancelNew nebo EndNew volání jiných položek, než je nově přidaná položka. (Každá položka je obvykle řádek v zobrazení dat.) Ignorovat tato volání; zrušit nebo potvrdit novou položku pouze v případech, kdy je zadán index dané položky.
Existují dva modely, které umožňují transakční přidání položky do kolekce vázané na data:
Starší model spoléhá přímo na kolekci, která implementuje rozhraní IBindingList a je přímo svázaná s daty pomocí třídy System.Windows.Forms.CurrencyManager. Metody AddNew, EndCurrentEdit a CancelCurrentEdit třídy System.Windows.Forms.CurrencyManager zodpovídají za transakční podporu přidávání nových položek. Tato funkce však závisí na položkách podporujících transakční chování prostřednictvím IEditableObject rozhraní. Pokud položky toto rozhraní nepodporují, položka bude vždy přidána do seznamu bez ohledu na následná volání CancelCurrentEdit.
Novější model podporuje robustnější scénář datové vazby prostřednictvím obecné BindingList<T> třídy, která implementuje IBindingList rozhraní a ICancelAddNew rozhraní. V tomto případě je transakční podpora spravována přímo kolekcí BindingList<T> .
Metody
| Name | Description |
|---|---|
| CancelNew(Int32) |
Zahodí nevyřízenou novou položku z kolekce. |
| EndNew(Int32) |
Potvrdí čekající novou položku do kolekce. |