BindingList<T>.AddNew Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Adiciona um novo item à coleção.
public:
T AddNew();
public T AddNew();
member this.AddNew : unit -> 'T
Public Function AddNew () As T
Devoluções
O item adicionado à lista.
Exceções
A propriedade AllowNew está definida como false.
-ou-
Não foi possível encontrar um construtor público sem parâmetros para o tipo de item atual.
Exemplos
O exemplo de código seguinte demonstra como usar o AddNew método. BindingList<T>. Para o exemplo completo, veja o tópico de resumo BindingList<T> da aula.
// 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
Observações
O AddNew método adiciona um novo item à coleção representada pela Items propriedade. Para adicionar um novo item, é usada a seguinte lógica:
O AddingNew evento é automaticamente elevado.
Este evento pode ser gerido programaticamente para construir um novo item personalizado. Isto é conseguido no gestor de eventos ao definir a NewObject propriedade do AddingNewEventArgs parâmetro para o novo item.
Caso contrário, o novo item é criado automaticamente através do seu construtor público sem parâmetros.
A posição do novo item é acompanhada, mas não é adicionada à lista até que uma das seguintes condições seja cumprida:
O item é explicitamente comprometido por uma chamada para EndNew.
O item é implicitamente comprometido por alguma outra operação que alterou o conteúdo da lista, como a inserção ou remoção de um item.
Em contraste, chamar o CancelNew método antes do item ser comprometido fará com que o novo item seja descartado.
Este método levanta o ListChanged evento quando o novo item é comprometido.