与 DataGridView 相关的 API 现在引发 InvalidOperationException
如果对象的 DataGridViewCell.DataGridViewCellAccessibleObject.Owner 值为 null
,则与 DataGridView 相关的某些 API 现在会引发 InvalidOperationException。
更改说明
在以前的 .NET 版本中,受影响的 API 在被调用时会引发 NullReferenceException,并且 Owner 属性值为 null
。 从 .NET 6 开始,如果在调用 API 时,Owner 属性值为 null
,则这些 API 将引发 InvalidOperationException,而不会引发 NullReferenceException。
更改类别
此更改会影响二进制兼容性。
更改原因
引发 InvalidOperationException 符合 .NET 运行时的行为。 它还通过清楚地传达无效属性来改进调试体验。
引入的版本
.NET 6
建议操作
查看你的代码,并在必要时对其进行更新,以防止使用属性为 null
的 Owner 构造受影响的类型。
受影响的 API
下表列出了受影响的属性和方法:
- System.Windows.Forms.DataGridViewTopLeftHeaderCell.DataGridViewTopLeftHeaderCellAccessibleObject.Bounds
- System.Windows.Forms.DataGridViewTopLeftHeaderCell.DataGridViewTopLeftHeaderCellAccessibleObject.DefaultAction
- System.Windows.Forms.DataGridViewTopLeftHeaderCell.DataGridViewTopLeftHeaderCellAccessibleObject.Name
- System.Windows.Forms.DataGridViewTopLeftHeaderCell.DataGridViewTopLeftHeaderCellAccessibleObject.Navigate(AccessibleNavigation)
- System.Windows.Forms.DataGridViewTopLeftHeaderCell.DataGridViewTopLeftHeaderCellAccessibleObject.State