Sdílet prostřednictvím


Upozornění kompilátoru WFDEV006

Verze byla představena: .NET 10 Preview 1

ContextMenu, DataGrid, MainMenu, Menu, StatusBar, ToolBar jsou zastaralé. Poskytují se kvůli binární kompatibilitě s rozhraním .NET Framework.

Počínaje rozhraním .NET 10 jsou některé ovládací prvky k dispozici pro binární kompatibilitu s rozhraním .NET Framework, ale jsou označené jako zastaralé a nejsou určené k použití přímo z vašeho kódu. Nelze vytvořit instanci. Odkazování na jeden z následujících ovládacích prvků generuje upozornění WFDEV006 v době kompilace:

V předchozích verzích rozhraní .NET by odkazování na knihovnu .NET Framework, která používala tyto typy, vedlo k výjimce, protože .NET tyto typy nezadaly. Od verze .NET 10 existují tyto typy, aby se zlepšila kompatibilita se staršími knihovnami rozhraní .NET Framework, které není možné upgradovat.

Řešení problému

Nahraďte odkazy na tyto ovládací prvky jejich novějšími protějšky:

Původní ovládací prvek Nový ovládací prvek
ContextMenu ContextMenuStrip
DataGrid DataGridView
MainMenu MenuStrip
Menu ToolStripDropDown nebo ToolStripDropDownMenu
StatusBar StatusStrip
ToolBar ToolStrip

Potlačte upozornění

Pokud musíte odkazovat na zastaralá rozhraní API, například ke spuštění reflexe, můžete potlačit upozornění v kódu nebo v souboru projektu. Tyto typy ale nelze instancovat a jsou poskytovány pouze kvůli kompatibilitě.

Potlačte upozornění pomocí jedné z následujících metod:

  • Nastavte závažnost pravidla v souboru .editorConfig .

    [*.{cs,vb}]
    dotnet_diagnostic.WFDEV006.severity = none
    

    Další informace o konfiguračních souborech editoru naleznete v tématu Konfigurační soubory pro pravidla analýzy kódu.

  • Do souboru projektu přidejte následující PropertyGroup:

    <PropertyGroup>
        <NoWarn>$(NoWarn);WFDEV006</NoWarn>
    </PropertyGroup>
    
  • Potlačte kód pomocí direktivy #pragma warning disable WFDEV006.

Další informace naleznete v tématu Jak potlačit upozornění analýzy kódu.