Compartilhar via


Os métodos WinForms agora geram ArgumentNullException

Alguns métodos do Windows Forms agora lançam um ArgumentNullException para argumentos nulos, em que anteriormente eles lançavam uma NullReferenceException.

Descrição da alteração

Anteriormente, determinados métodos do Windows Forms lançavam uma exceção NullReferenceException se um argumento nulo fosse passado. Do .NET 5 em diante, esses métodos agora geram uma ArgumentNullException para argumentos nulos.

Gerar um ArgumentNullException está em conformidade com o comportamento do runtime do .NET. Ele também melhora a experiência de depuração comunicando claramente que um argumento é nulo e qual argumento ele é.

Versão introduzida

.NET 5.0

Se você chamar um desses métodos e o código capturar no momento um NullReferenceException para argumentos nulos, capture um ArgumentNullException no lugar. Além disso, considere atualizar o código para impedir a passagem de argumentos nulos para os métodos listados.

APIs afetadas

A tabela a seguir lista os métodos e parâmetros afetados:

Método Nome do parâmetro Versão adicionada
Control.ControlCollection(Control) owner Versão prévia 1
TabControl.GetToolTipText(Object) item Versão prévia 1
TableLayoutControlCollection(TableLayoutPanel) container Versão prévia 1
ToolStripRenderer.OnRenderArrow(ToolStripArrowRenderEventArgs) e Versão prévia 1
ToolStripRenderer.OnRenderItemCheck(ToolStripItemImageRenderEventArgs) e Versão prévia 1
ToolStripRenderer.OnRenderItemImage(ToolStripItemImageRenderEventArgs) e Versão prévia 1
ToolStripRenderer.OnRenderItemText(ToolStripItemTextRenderEventArgs) e Versão prévia 1
ToolStripRenderer.OnRenderStatusStripSizingGrip(ToolStripRenderEventArgs) > e Versão prévia 1
DataGridViewComboBoxEditingControl.ApplyCellStyleToEditingControl(DataGridViewCellStyle) dataGridViewCellStyle Versão prévia 2
RichTextBox.LoadFile(Stream, RichTextBoxStreamType) data Versão prévia 2
ListBox.IntegerCollection(ListBox) owner Versão prévia 5
ListBox.IntegerCollection.CopyTo(Array, Int32) destination Versão prévia 5
ListViewGroup.ISerializable.GetObjectData(SerializationInfo, StreamingContext) info Versão prévia 5
VisualStyleRenderer(String, Int32, Int32) className Versão prévia 5
ListBox.ObjectCollection(ListBox) owner Versão prévia 6
ListBox.ObjectCollection(ListBox, Object[]) owner, value Versão prévia 6
ListBox.ObjectCollection(ListBox, ListBox+ObjectCollection) owner, value Versão prévia 6
ListBox.ObjectCollection.AddRange(Object[]) items Versão prévia 6
ListBox.ObjectCollection.AddRange(ListBox+ObjectCollection) value Versão prévia 6
ListBox.ObjectCollection.CopyTo(Object[], Int32) destination Versão prévia 6
ListBox.ObjectCollection.ICollection.CopyTo(Array, Int32) destination Versão prévia 6
ListView.SelectedIndexCollection(ListView) owner Versão prévia 7
TreeNodeCollection.Find(String, Boolean) key é null ou vazio Versão prévia 8
ListView.ListViewItemCollection.Find(String, Boolean) key é null ou vazio RC1
ScrollableControl.OnPaintBackground(PaintEventArgs) e RC1