Omezení rizik: Rámečky PNG v objektech ikon

Počínaje rozhraním .NET Framework 4.6 Icon.ToBitmap metoda úspěšně převádí ikony s rámečky PNG na Bitmap objekty.

V aplikacích, které cílí na rozhraní .NET Framework 4.5.2 a starší verze, vyvolá metoda ArgumentOutOfRangeException výjimku, Icon.ToBitmap pokud Icon má objekt rámce PNG.

Dopad

Tato změna má vliv na aplikace, které jsou rekompilovány tak, aby cílily na rozhraní .NET Framework 4.6 a implementují speciální zpracování pro ArgumentOutOfRangeException vyvolání, pokud Icon má objekt rámce PNG. Při spuštění v rozhraní .NET Framework 4.6 je převod úspěšný, ArgumentOutOfRangeException již není vyvolána, a proto obslužná rutina výjimky již není vyvolána.

Zmírnění

Pokud je toto chování nežádoucí, můžete předchozí chování zachovat přidáním následujícího prvku do <části runtime> souboru app.config:

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

Pokud soubor app.config již obsahuje AppContextSwitchOverrides prvek, měla by se nová hodnota sloučit s atributem value takto:

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

Viz také