BindingSource.AddNew Metoda
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á novou položku do podkladového seznamu.
public:
virtual System::Object ^ AddNew();
public virtual object AddNew();
public virtual object? AddNew();
abstract member AddNew : unit -> obj
override this.AddNew : unit -> obj
Public Overridable Function AddNew () As Object
Návraty
Vytvořený Object a přidaný do seznamu.
Implementuje
Výjimky
Vlastnost AllowNew je nastavena na hodnotu false.
nebo
Veřejný konstruktor bez parametrů nebyl nalezen pro aktuální typ položky.
Příklady
Následující příklad kódu používá komponentu BindingSource k vytvoření vazby seznamu k ovládacímu DataGridView prvku. Do seznamu se přidají nové položky obslužnou rutinou AddingNew události. Tento příklad kódu je součástí většího příkladu uvedeného v části Postupy: Přizpůsobení přidání položky pomocí Windows Forms BindingSource.
private:
void OnMainFormLoad(Object^ sender, EventArgs^ e)
{
// Add a DemoCustomer to cause a row to be displayed.
this->customersBindingSource->AddNew();
// Bind the BindingSource to the DataGridView
// control's DataSource.
this->customersDataGridView->DataSource =
this->customersBindingSource;
}
private void Form1_Load(System.Object sender, System.EventArgs e)
{
// Add a DemoCustomer to cause a row to be displayed.
this.customersBindingSource.AddNew();
// Bind the BindingSource to the DataGridView
// control's DataSource.
this.customersDataGridView.DataSource =
this.customersBindingSource;
}
Private Sub Form1_Load( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs)
' Add a DemoCustomer to cause a row to be displayed.
Me.customersBindingSource.AddNew()
' Bind the BindingSource to the DataGridView
' control's DataSource.
Me.customersDataGridView.DataSource = Me.customersBindingSource
End Sub
Poznámky
Metoda AddNew přidá novou položku do podkladového seznamu reprezentované List vlastností. Tato metoda nastaví následující řadu akcí:
Metoda EndEdit se automaticky volá k potvrzení všech čekajících operací úprav.
Událost AddingNew se automaticky vyvolá. Tuto událost lze zpracovat prostřednictvím kódu programu pro vytvoření nové položky. To se provádí v obslužné rutině události nastavením NewObject vlastnosti System.ComponentModel.AddingNewEventArgs parametru na novou položku. Nový objekt vytvořený v AddingNew události musí být stejného typu jako typ obsažený v seznamu nebo dojde k výjimce.
AddingNew Pokud událost není zpracována a podkladový seznam je , IBindingListpak se požadavek předá metodě seznamuIBindingList.AddNew. Pokud podkladový seznam není IBindingList, položka se automaticky vytvoří prostřednictvím veřejného konstruktoru bez parametrů. V obou případech se nová položka přidá na konec seznamu.
Nová položka se přidá okamžitě do interního seznamu, pokud zdroj dat neimplementuje IEditableObject rozhraní. V tomto případě není nová položka potvrzena, dokud není provedeno explicitní volání ICancelAddNew.EndNew nebo dokud se nesvolá nová operace seznamu. Před potvrzením lze novou položku vrátit zpět voláním CancelEdit, v takovém případě je nová položka zahozena.
Tato metoda vyvolá ListChanged událost.