BindingList<T>.AddNew 方法

定义

将新项添加到集合。

public T AddNew ();

返回

T

添加到列表的项。

例外

AllowNew 属性设置为 false

- 或 -

未能找到当前项目类型的公共无参数构造函数。

示例

下面的代码示例演示如何使用 AddNew 方法。 BindingList<T>. 有关完整示例,请参阅 BindingList<T> 类概述主题。

// Add the new part unless the part number contains
// spaces. In that case cancel the add.
private 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";
    }
}

注解

方法 AddNew 将新项添加到 由 属性表示的集合中 Items 。 若要添加新项,请使用以下逻辑:

  1. 事件 AddingNew 会自动引发。

    可以通过编程方式处理此事件以构造新的自定义项。 这是在事件处理程序中通过将 参数的 AddingNewEventArgs 属性设置为NewObject新项来实现的。

    否则,会通过其公共无参数构造函数自动创建新项。

  2. 跟踪新项的位置,但在满足以下条件之一之前,不会将其添加到列表中:

    • 通过调用 EndNew显式提交项。

    • 该项由更改列表内容的其他操作隐式提交,例如插入或删除项。

相比之下,在提交项之前调用 CancelNew 方法将导致放弃新项。

此方法在 ListChanged 提交新项时引发 事件。

适用于

产品 版本
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

另请参阅