從 .NET 10 開始,某些 Windows Forms API 已標示為過時。
先前的行為
先前, 受影響的 API 可以在沒有任何建置警告的情況下使用。
新行為
在 .NET 10 和更新版本中,使用這些 API 會產生具有自定義診斷標識碼的編譯時警告。 使用自訂診斷標識碼可讓您個別隱藏警告,而不是全面隱藏所有過時警告。
下表列出自定義診斷標識碼及其對應的警告訊息。
| 診斷標識碼 | 描述 | 嚴重性 |
|---|---|---|
| WFDEV004 | Form.OnClosing(CancelEventArgs)、Form.OnClosed(EventArgs) 和對應的事件已經過時。 請改用 Form.OnFormClosing(FormClosingEventArgs)、Form.OnFormClosed(FormClosedEventArgs)、Form.FormClosing 和 Form.FormClosed。 | 警告 |
| WFDEV005 | Clipboard.GetData(String) 方法已經過時。 請改用 Clipboard.TryGetData 方法。 | 警告 |
| WFDEV006 | ContextMenu、DataGrid、MainMenu、Menu、StatusBar、ToolBar 已經過時。 它們是為了與 .NET Framework 的二進位相容性而提供。 | 警告 |
引進的版本
.NET 10
中斷性變更的類型
這些移除通知可能會影響 源代碼相容性。
建議的動作
- 使用警告上提供的 URL 連結,遵循針對每個診斷識別碼提供的特定指引。
- 如有必要,您可以使用自定義
WFDEVxxx診斷標識碼值來隱藏警告。
受影響的 API
WFDEV004
WFDEV005
WFDEV006
- System.Windows.Forms.ContextMenu
- System.Windows.Forms.DataGrid
- System.Windows.Forms.MainMenu
- System.Windows.Forms.Menu
- System.Windows.Forms.StatusBar
- System.Windows.Forms.ToolBar
另請參閱
- .NET 10+ 中過時的 Windows Forms 功能