IVsToolboxItemProvider Interface
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Implementado por pacotes que desejam fornecer itens de caixa de ferramentas registrados estaticamente (no mesmo objeto que IVsPackage ).
public interface class IVsToolboxItemProvider
public interface class IVsToolboxItemProvider
__interface IVsToolboxItemProvider
public interface IVsToolboxItemProvider
type IVsToolboxItemProvider = interface
Public Interface IVsToolboxItemProvider
- Derivado
Comentários
Se o conteúdo da caixa de ferramentas for declarado no registro, essa interface será chamada pela caixa de ferramentas para recuperar o conteúdo do item sob demanda (em vez de criá-lo com uma única chamada para ResetDefaults ). Se o conteúdo for declarado no registro, mas essa interface não for implementada, ResetDefaults ainda será chamada, mas a chamada será adiada até que o conteúdo de um item da caixa de ferramentas seja necessário (por exemplo, quando o usuário arrastar um item para um designer).
Para declarar o conteúdo da caixa de ferramentas no registro, crie a chave do registro Toolbox\DefaultContent em HKLM\Software\Microsoft\<appid>\<version>\Packages\<package GUID> .
Na chave DefaultContent, crie uma chave para cada grupo da caixa de ferramentas em que você deseja criar ou inserir itens. O nome da chave é a "ID exclusiva" (por exemplo, um nome não localizado); o valor padrão da chave é o nome. Se o nome for localizável, você deverá definir o valor padrão como "#123", em que 123 é a ID de um recurso em sua DLL satélite. Em cada chave de grupo, crie uma chave para cada item da caixa de ferramentas que você deseja adicionar ao grupo.
O nome da chave e o valor padrão são a ID exclusiva e o nome (o mesmo que para as chaves de grupo). Os valores a seguir também são necessários:
HelpKeyword: cadeia de caracteres
Formatos: uma lista delimitada por ponto-e-vírgula de nomes de formato de dados.
Bitmap: dados binários que representam os pixels de uma imagem, com quatro bytes por pixel ( <unused> , vermelho, verde, azul) organizados da esquerda para a direita e de cima para baixo (como recuperado pela função GetDIBits usando DIB_RGB_COLORS, 1 plano, BI_RGB compactação, and32 bits por pixel). O bitmap deve ter 16x16 pixels, a menos que seja uma faixa de imagem (veja BitmapIndex abaixo); nesse caso, ele deve ter 16 pixels de altura e um multipleof de 16 pixels de largura. ou... BitmapResourceID: uma cadeia de caracteres que identifica um recurso de bitmap no satelliteDLL do pacote. As restrições de tamanho descritas para "bitmap" se aplicam aqui também.
TransparentColor: um DWORD (com bytes <unused> , vermelho, verde, azul) indicando a cor que deve ser renderizada de forma transparente no bitmap do item.
Os seguintes valores opcionais também podem ser especificados:
Valores de cadeia de caracteres TipTitle, TipVersion, TipPublisher, TipType e TipDescription (consulte os comentários em IVsToolboxDataProvider2:: GetItemTipInfo.
Valores de cadeia de caracteres AssemblyName, TypeName, TFMs e TargetedItemProvider.
O valor da cadeia de caracteres MinimumFrameworkVersion também tem suporte, para compatibilidade com VS 2008.
Valor DWORD BitmapIndex, que indica que o bitmap é, na verdade, uma faixa de imagens e identifica a imagem a ser extraída dela.
Cada chave de item pode, opcionalmente, ter uma subchave chamada "item de conteúdo" contendo formatos de dados cujo conteúdo é conhecido no momento da instalação. Para cada um deles, um valor é criado sob essa chave cujo nome é o nome do formato de dados e cujo valor é um blob binário que contém os bytes do formato.
O conteúdo dos formatos de dados será carregado sob demanda usando IVsToolboxItemProvider ou ResetDefaults conforme descrito acima.
Métodos
| GetItemContent(String, UInt16, IntPtr) |
Retorna um identificador global para o conteúdo de um item de interface do usuário. |