2012-02-01 10 views
1

Visual Studio 2010 확장 프로그램을 개발 중입니다. 이미 내 창에 툴바가 있습니다. 그 도구 모음에는 아이콘을주고 싶은 단추가 있습니다 - 내 자신의 아이콘! 나는 this article을 읽었으며 훌륭하지만 ... 을 아이콘으로 바꿉니다.Visual Studio 2010 확장 프로그램에 새 아이콘을 추가하려면 어떻게해야합니까?

나는 에 추가 아이콘을 추가합니다.

어떻게해야합니까?

+0

확장 기능에 따라 다릅니다. 단추의 정의가 들어있는 .vsct 파일이 프로젝트에 있습니까? – Will

+0

예, 있습니다. 나는 대답을 찾은 것 같지만 당신의 말을 듣고 싶습니다. 그래서 내가 옳은 일을하는지 배우고 볼 수 있습니다. – shemesh

답변

6

첫째, 자원을 비트 맵을 추가하고 에 자사의 빌드 작업을 설정

enter image description here

기억, 충격적인 분홍색 = 투명 (빌어 먹을, 오래된 학교!)

enter image description here

그런 다음 vsct 파일에서 이미지를 비트 맵 섹션에 추가하십시오.

,451,515,
<Bitmaps> 
    <Bitmap guid="AddSampleData.bmpGuid" 
      href="..\Button Bitmaps\AddSampleData.bmp" 
      usedList="AddSampleData.bmpId" /> 
    <Bitmap guid="ApplySampleData.bmpGuid" 
      href="..\Button Bitmaps\ApplySampleData.bmp" 
      usedList="ApplySampleData.bmpId" /> 
</Bitmaps> 

및 기호 노드

<Symbols> 
    <!-- snip --> 
    <GuidSymbol name="AddSampleData.bmpGuid" 
       value="{dcae7c84-8e91-4f8a-907b-95ccb0f52e6e}"> 
     <IDSymbol name="AddSampleData.bmpId" 
        value="1" /> 
    </GuidSymbol> 
    <GuidSymbol name="ApplySampleData.bmpGuid" 
       value="{9f555245-2430-4e6f-992b-b49ce87a31a2}"> 
     <IDSymbol name="ApplySampleData.bmpId" 
        value="1" /> 
    </GuidSymbol> 
</Symbols> 

의 GUID를 지정하고 버튼 물론

<Buttons> 
<!-- snip --> 
    <Button guid="guidEditorExtensionCommandSet" 
      id="setDesignTimeDataOnPage" 
      priority="0x0100"> 
     <Icon guid="ApplySampleData.bmpGuid" 
       id="ApplySampleData.bmpId" /> 
     <Strings> 
        <!-- snip --> 
     </Strings> 
    </Button> 
</Buttons> 

에 적용 자사의 우수한 VSPackage Builder extension.을 포함하여 사용 가능한 도구를 사용하는 것이 항상 쉬운

enter image description here

+1

대단한, tnx, 정확히 내가 한 일! 하지만 .png가 .bmp가 아니기 때문에 투명성이 생기면 삶이 편해집니다. 유일한 차이점은 비트 맵 태그 안에 usedList가 필요 없다는 것입니다. – shemesh

+0

@shemesh : 알아두면 좋습니다! – Will

6

이 문제를 해결하려면 에 PNG를 만들고 확장명을 * .bmp으로 바꿉니다. VS는이를 아이콘 이미지로 받아들이고 투명도를 갖습니다 (Visual Studio 확장 성>Toolbox Icons -- Is transparency supported?)

+0

이 트릭을 게시 해 주셔서 대단히 감사합니다. Dmitry. 이것은 내 인생을 훨씬 더 쉽게 만들 것입니다! :-) –