Share via


Os métodos do WinForms agora geram ArgumentNullException

Alguns métodos do Windows Forms agora geram uma ArgumentNullException para argumentos nulos, em que antes geravam uma NullReferenceException.

Descrição das alterações

Antes, certos métodos do Windows Forms geravam uma NullReferenceException quando um argumento nulo era passado. Do .NET 5 em diante, esses métodos agora geram uma ArgumentNullException para argumentos nulos.

A geração de uma ArgumentNullException está em conformidade com o comportamento do runtime do .NET. Isso também aprimora a experiência de depuração comunicando claramente que um argumento é nulo e de qual argumento se trata.

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 aos métodos listados.

APIs afetadas

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

Método Nome do parâmetro Versão adicionada
Control.ControlCollection(Control) owner Preview 1
TabControl.GetToolTipText(Object) item Preview 1
TableLayoutControlCollection(TableLayoutPanel) container Preview 1
ToolStripRenderer.OnRenderArrow(ToolStripArrowRenderEventArgs) e Preview 1
ToolStripRenderer.OnRenderItemCheck(ToolStripItemImageRenderEventArgs) e Preview 1
ToolStripRenderer.OnRenderItemImage(ToolStripItemImageRenderEventArgs) e Preview 1
ToolStripRenderer.OnRenderItemText(ToolStripItemTextRenderEventArgs) e Preview 1
ToolStripRenderer.OnRenderStatusStripSizingGrip(ToolStripRenderEventArgs) > e Preview 1
DataGridViewComboBoxEditingControl.ApplyCellStyleToEditingControl(DataGridViewCellStyle) dataGridViewCellStyle Preview 2
RichTextBox.LoadFile(Stream, RichTextBoxStreamType) data Preview 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