共用方式為


減輕:圖示物件中的 PNG 影格

從 .NET Framework 4.6 開始, Icon.ToBitmap 此方法會成功將具有 PNG 畫面格的圖示轉換成 Bitmap 物件。

在以 .NET Framework 4.5.2 和舊版為目標的應用程式中,如果Icon.ToBitmap物件具有 PNG 幀,ArgumentOutOfRangeException方法會拋出Icon異常。

影響

這項變更會影響重新編譯為以 .NET Framework 4.6 為目標的應用程式,以及針對 ArgumentOutOfRangeException 物件具有 PNG 畫面格時 Icon 所擲回之 的 實作特殊處理。 在 .NET Framework 4.6 下執行時,轉換成功, ArgumentOutOfRangeException 不會再擲回 ,因此不會再叫用例外狀況處理程式。

緩和措施

如果不需要此行為,您可以將下列元素新增至 <app.config 檔案的運行> 時間區段,以保留先前的行為:

<AppContextSwitchOverrides
      value="Switch.System.Drawing.DontSupportPngFramesInIcons=true" />  

如果 app.config 檔案已經包含 AppContextSwitchOverrides 元素,則新值應該與 value 屬性合併,如下所示:

<AppContextSwitchOverrides
      value="Switch.System.Drawing.DontSupportPngFramesInIcons=true;previous key=previous-value" />

另請參閱