Nastavení ikony ovládacího prvku v sadě nástrojů (model Windows Forms .NET)
Ovládací prvky, které vytvoříte, vždy obdrží obecnou ikonu pro okno Sady nástrojů v sadě Visual Studio. Když ale ikonu změníte, přidá do svého ovládacího prvku smysl pro profesionální práci a vynikne v sadě nástrojů. V tomto článku se naučíte, jak nastavit ikonu ovládacího prvku.
Důležité
Dokumentace k desktopové příručce pro .NET 7 a .NET 6 se právě připravuje.
Bitmap icon
Ikony pro okno panelu nástrojů v sadě Visual Studio musí odpovídat určitým standardům, jinak se ignorují nebo se zobrazují nesprávně.
- Velikost: Ikony ovládacího prvku musí být rastrový obrázek 16x16.
- Typ souboru: Ikona může být rastrový obrázek (.bmp) nebo soubor ikony Systému Windows (.ico).
- Průhlednost: Purpurová barva (RGB:
255,0,255
, Hex:0xFF00FF
) je vykreslena průhledná. - Motivy: Visual Studio má více motivů, ale každý motiv se považuje za tmavý nebo světlý. Ikona by měla být navržená pro světlý motiv. Pokud Visual Studio používá tmavý motiv, tmavé a světlé barvy v ikoně se automaticky invertují.
Přiřazení ikony
Ikony jsou přiřazeny ovládacímu prvku s atributem ToolboxBitmapAttribute . Další informace o atributech najdete v tématu Atributy (C#) nebo Přehled atributů (Visual Basic).
Atribut je nastaven na třídu ovládacího prvku a má tři různé konstruktory:
ToolboxBitmapAttribute(Type)– Tento konstruktor používá jeden odkaz na typ a z tohoto typu se pokusí najít vložený prostředek, který se použije jako ikona.
Hodnota typu FullName se používá k pokusu o vyhledání odpovídajícího vloženého prostředku na základě názvu typu. Pokud je například odkazován na
MyProject.MyNamespace.CompassRose
typ, atribut hledá prostředek s názvemMyProject.MyNamespace.CompassRose.bmp
neboMyProject.MyNamespace.CompassRose.ico
. Pokud se prostředek najde, použije se jako ikona ovládacího prvku.// Looks for a CompassRose.bmp or CompassRose.ico embedded resource in the // same namespace as the CompassRose type. [ToolboxBitmap(typeof(CompassRose))] public partial class CompassRose : UserControl { // Code for the control }
' Looks for a CompassRose.bmp or CompassRose.ico embedded resource in the ' same namespace as the CompassRose type. <ToolboxBitmap(GetType(CompassRose))> Public Class CompassRose ' Code for the control End Class
ToolboxBitmapAttribute(Type, String)– Tento konstruktor má dva parametry. První parametr je typ a druhý je obor názvů a název prostředku v sestavení tohoto typu.
// Loads the icon from the WinFormsApp1.Resources.CompasRoseIcon.bmp resource // in the assembly containing the type CompassRose [ToolboxBitmap(typeof(CompassRose), "WinFormsApp1.Resources.CompasRoseIcon.bmp")] public partial class CompassRose : UserControl { // Code for the control }
' Loads the icon from the WinFormsApp1.Resources.CompasRoseIcon.bmp resource ' in the assembly containing the type CompassRose <ToolboxBitmap(GetType(CompassRose), "WinFormsApp1.Resources.CompasRoseIcon.bmp")> Public Class CompassRose ' Code for the control End Class
ToolboxBitmapAttribute(String)– Tento konstruktor přebírá jeden řetězcový parametr, absolutní cestu k souboru ikony.
// Loads the icon from a file on disk [ToolboxBitmap(@"C:\Files\Resources\MyIcon.bmp")] public partial class CompassRose : UserControl { // Code for the control }
' Loads the icon from a file on disk <ToolboxBitmap("C:\Files\Resources\MyIcon.bmp")> Public Class CompassRose ' Code for the control End Class
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro