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řidávat novou položku rozšiřitelným způsobem. Novou položku lze následně potvrdit nebo vrátit zpět. Metoda AddNew kolekce se používá k nezávazné přidání položky, která se následně provede prostřednictvím následujících operací:
Metoda EndNew explicitně potvrdí čekající přidání.
Provedení jiné operace shromažďování, jako je vložení, odebrání nebo přesunutí, implicitně potvrdí čekající přidání.
Metoda CancelNew vrátí zpět čekající přidání, pokud ještě nebyla potvrzena.
Poznámka
V některých scénářích, například model Windows Forms složité datové vazby, může kolekce přijímat CancelNew nebo EndNew volat jiné položky než nově přidanou položku. (Každá položka je obvykle řádek v zobrazení dat.) Ignorovat tato volání; zrušit nebo potvrdit novou položku pouze v případě, že je zadán index této 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 IBindingList rozhraní a je vázána na data přímo pomocí System.Windows.Forms.CurrencyManager třídy. Metody AddNewSystem.Windows.Forms.CurrencyManager , EndCurrentEdita CancelCurrentEdit třídy jsou zodpovědné 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 nepodporují toto rozhraní, bude položka vždy přidána do seznamu bez ohledu na následná volání nástroje CancelCurrentEdit.
Novější model podporuje robustnější scénář datových vazeb prostřednictvím obecné BindingList<T> třídy, která implementuje IBindingList rozhraní a ICancelAddNew . V tomto případě je transakční podpora spravována přímo kolekcí BindingList<T> .
Metody
CancelNew(Int32) |
Zahodí čekající novou položku z kolekce. |
EndNew(Int32) |
Potvrdí novou čekající položku do kolekce. |