Aracılığıyla paylaş


Araç Kutusu'nda denetimin simgesini ayarlama

Oluşturduğunuz denetimler her zaman Visual Studio'daki Araç Kutusu penceresi için genel bir simge alır. Ancak simgeyi değiştirdiğinizde, denetiminize profesyonellik hissi ekler ve araç kutusunda öne çıkmasını sağlar. Bu makalede, denetiminiz için simgenin nasıl ayarlanacağı öğretildi.

Bitmap simgesi

Visual Studio'daki Araç Kutusu penceresinin simgeleri belirli standartlara uygun olmalıdır, aksi takdirde bunlar yoksayılır veya yanlış görüntülenir.

  • Boyut: Denetimin simgeleri 16x16 bit eşlem görüntüsü olmalıdır.
  • Dosya türü: Simge bir Bit Eşlem (.bmp) veya Windows Simgesi (.ico) dosyası olabilir.
  • Saydamlık: Eflatun rengi (RGB: 255,0,255, Onaltılık: 0xFF00FF) saydam olarak görünür.
  • Temalar: Visual Studio'da birden çok tema vardır, ancak her tema koyu veya açık olarak kabul edilir. Simgeniz ışık teması için tasarlanmalıdır. Visual Studio koyu bir tema kullandığında, simgedeki koyu ve açık renkler otomatik olarak ters çevrilir.

Simge nasıl atanır

Simgeler, bir denetimdeki ToolboxBitmapAttribute özniteliğine atanır. Öznitelikler hakkında daha fazla bilgi için bkz. Öznitelikleri (C#) veya Özniteliklerine genel bakış (Visual Basic).

Tavsiye

GitHub'dan örnek bir simge indirebilirsiniz.

özniteliği denetimin sınıfında ayarlanır ve üç farklı oluşturucuya sahiptir:

  • ToolboxBitmapAttribute(Type)—Bu oluşturucu tek bir tür başvurusu alır ve bu türden simge olarak kullanılacak ekli bir kaynak bulmaya çalışır.

    Türü FullName , aşağıdaki biçim kullanılarak bu türdeki bir eklenmiş kaynağı derlemede aramak için kullanılır: {project-name}.{namespace-path}.{type-name}{.bmp|.ico}. Örneğin, türe MyProject.MyNamespace.CompassRose başvurulursa, öznitelik MyProject.MyNamespace.CompassRose.bmp veya MyProject.MyNamespace.CompassRose.ico adlı ekli bir kaynağı arar.

    // 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)—Bu oluşturucu iki parametre alır. İlk parametre bir tür, ikincisi ise bu türün derlemesindeki eklenmiş kaynağın ad alanı ve adıdır.

    // Loads the icon from the WinFormsApp1.Resources.CompassRose.bmp resource
    // in the assembly containing the type CompassRose
    [ToolboxBitmap(typeof(CompassRose), "WinFormsApp1.Resources.CompassRose.bmp")]
    public partial class CompassRose : UserControl
    {
        // Code for the control
    }
    
    ' Loads the icon from the WinFormsApp1.Resources.CompassRose.bmp resource
    ' in the assembly containing the type CompassRose
    <ToolboxBitmap(GetType(CompassRose), "WinFormsApp1.Resources.CompassRose.bmp")>
    Public Class CompassRose
        ' Code for the control
    End Class
    
  • ToolboxBitmapAttribute(String)—Bu oluşturucu, simge dosyasının mutlak yolu olan tek bir dize parametresini alır.

    // 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