ColorableItem.GetColorData(Int32, UInt32) Método
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.
Obtenha o elemento de primeiro plano ou plano de fundo de alta cor especificado.
public:
virtual int GetColorData(int cdElement, [Runtime::InteropServices::Out] System::UInt32 % crColor);
virtual int GetColorData(int cdElement, [Runtime::InteropServices::Out] unsigned int & crColor);
public virtual int GetColorData (int cdElement, out uint crColor);
abstract member GetColorData : int * uint32 -> int
override this.GetColorData : int * uint32 -> int
Public Overridable Function GetColorData (cdElement As Integer, ByRef crColor As UInteger) As Integer
Parâmetros
- cdElement
- Int32
no Um valor da __tagVSCOLORDATA enumeração que especifica qual elemento de cor deve ser recuperado.
- crColor
- UInt32
fora Retorna um COLORREF objeto que contém os valores RGB para o elemento Color especificado.
Retornos
Se bem-sucedido, retorna S_OK ; caso contrário, retorna um código de erro.
Implementações
Exemplos
Essa é uma implementação possível desse método (isso é semelhante à implementação base fornecida pela estrutura de pacote gerenciada).
using System.Drawing;
using Microsoft.VisualStudio;
using Microsoft.VisualStudio.TextManager.Interop;
public virtual int GetColorData(int cdElement, out uint crColor)
{
crColor = 0;
if (hiForeColor.IsEmpty || hiBackColor.IsEmpty)
{
return VSConstants.E_FAIL;
}
switch (cdElement)
{
case (int)__tagVSCOLORDATA.CD_FOREGROUND:
crColor = ColorToRgb(this.hiForeColor);
break;
case (int)__tagVSCOLORDATA.CD_BACKGROUND:
crColor = ColorToRgb(this.hiBackColor);
break;
default:
return VSConstants.E_FAIL;
}
return VSConstants.S_OK;
}
uint ColorToRgb(Color color)
{
uint colorref = (uint)ColorTranslator.ToWin32(
Color.FromArgb(color.R,
color.G,
color.B));
return colorref;
}
Comentários
Esse método é uma implementação do GetColorData método na IVsHiColorItem interface.
O método base retorna o elemento Color que foi passado para o construtor para o elemento de primeiro plano ( cdElement parâmetro = CD_FOREGROUND ) ou segundo plano ( cdElement parâmetro = CD_BACKGROUND ).