BindingList<T>.AddNew Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Új elemet ad hozzá a gyűjteményhez.
public:
T AddNew();
public T AddNew();
member this.AddNew : unit -> 'T
Public Function AddNew () As T
Válaszok
A listához hozzáadott elem.
Kivételek
A AllowNew tulajdonság be van állítva false-re.
-vagy-
Nem található nyilvános paraméter nélküli konstruktor az aktuális elemtípushoz.
Példák
Az alábbi példakód bemutatja a AddNew metódus használatát. BindingList<T>. A teljes példáért tekintse meg az osztály áttekintési témakörét BindingList<T> .
// Add the new part unless the part number contains
// spaces. In that case cancel the add.
void button1_Click(object sender, EventArgs e)
{
Part newPart = listOfParts.AddNew();
if (newPart.PartName.Contains(' '))
{
_ = MessageBox.Show("Part names cannot contain spaces.");
listOfParts.CancelNew(listOfParts.IndexOf(newPart));
}
else
{
textBox2.Text = randomNumber.Next(9999).ToString();
textBox1.Text = "Enter part name";
}
}
' Add the new part unless the part number contains
' spaces. In that case cancel the add.
Private Sub button1_Click(ByVal sender As Object, _
ByVal e As EventArgs) Handles button1.Click
Dim newPart As Part = listOfParts.AddNew()
If newPart.PartName.Contains(" ") Then
MessageBox.Show("Part names cannot contain spaces.")
listOfParts.CancelNew(listOfParts.IndexOf(newPart))
Else
textBox2.Text = randomNumber.Next(9999).ToString()
textBox1.Text = "Enter part name"
End If
End Sub
Megjegyzések
A AddNew metódus új elemet ad hozzá a tulajdonság által képviselt gyűjteményhez Items . Új elem hozzáadásához a következő logikát használja a rendszer:
Az AddingNew esemény automatikusan fel lesz emelve.
Ez az esemény programozott módon kezelhető egy új egyéni elem létrehozásához. Ez az eseménykezelőben úgy érhető el, hogy a NewObject paraméter tulajdonságát az új elemre állítja AddingNewEventArgs .
Ellenkező esetben az új elem automatikusan létrejön a nyilvános paraméter nélküli konstruktoron keresztül.
Az új elem pozícióját nyomon követi a rendszer, de csak akkor adja hozzá a listához, ha az alábbi feltételek valamelyike teljesül:
Az elemet egy hívás kifejezetten véglegesíteni kívánja EndNew.
Az elemet implicit módon lekötötte egy másik művelet, amely módosította a lista tartalmát, például egy elem beszúrása vagy eltávolítása.
Ezzel szemben az elem véglegesítése előtt a CancelNew metódus meghívása az új elem elvetéséhez vezet.
Ez a metódus az ListChanged új elem véglegesítésekor aktiválja az eseményt.