BindingList<T>.AllowNew Property

Definition

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Gets or sets a value indicating whether you can add items to the list using the AddNew() method.

C#
public bool AllowNew { get; set; }

Property Value

true if you can add items to the list with the AddNew() method; otherwise, false. The default depends on the underlying type contained in the list.

Examples

The following code example demonstrates how to set the AllowNew property. For the complete example, see the BindingList<T> class overview topic.

C#
    // Declare a new BindingListOfT with the Part business object.
    BindingList<Part> listOfParts; 
    private void InitializeListOfParts()
    {
        // Create the new BindingList of Part type.
        listOfParts = new BindingList<Part>();

        // Allow new parts to be added, but not removed once committed.        
        listOfParts.AllowNew = true;
        listOfParts.AllowRemove = false;

        // Raise ListChanged events when new parts are added.
        listOfParts.RaiseListChangedEvents = true;

        // Do not allow parts to be edited.
        listOfParts.AllowEdit = false;
        
        // Add a couple of parts to the list.
        listOfParts.Add(new Part("Widget", 1234));
        listOfParts.Add(new Part("Gadget", 5647));
    }

Remarks

The AllowNew property is typically used by other components to determine if the creation of new items is allowed. AllowNew defaults to true if the type contained in the list has a parameterless constructor or the AddingNew event is handled. If the AddingNew event is not handled or the list type does not have a parameterless constructor, then AllowNew defaults to false.

If AllowNew is explicitly set, the set value will always be used by bound objects to determine if new items can be added to the list. Whether AllowNew is true or false, new items can be added by explicitly calling AddNew if the list type has a parameterless constructor or the AddingNew event is handled. In addition, setting AllowNew causes a ListChanged event of type Reset to occur.

Applies to

Product Versions
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.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

See also