2012-03-13 2 views
3

클래스의 정적 멤버의 첫 글자를 입력 한 다음 완료 목록에 모든 가능한 클래스 .member 항목이 나열됩니다 (마술 바로 가기로)?자동 완료 다른 클래스의 멤버


더 자세한 설명 :

내가의 형태로 15 개 수업을 : 나는 Volumeclass을 입력하려면이 멤버에 액세스하고 목록을 싶어 할

class AClass 
{ 
    public static readonly string Volumeclass = "abcd"; 
    //... other members 
} 

class AnotherClass 
{ 
    public static readonly string Volumeclass = "xyz"; 
    //... other members 
} 

:

  • AClass.Volumeclass
  • AnotherClass.Volumeclass

지능형. 그래서 올바른 클래스 이름을 기억하는 대신 올바른 기호 만 선택해야합니다.

Smart Completion을 시도했지만 그 방식으로 작동하지 않았습니다.

+0

나는 그렇게 생각하지 않습니다. 프로젝트에 대해 더 많이 알지 못하거나 왜 그렇게 구조화해야하는지 알지 못하면 Enum 또는 Constants 전용 참조 클래스와 같이 다른 접근 방식이 더 실용적 일 수 있는지 여부를 알기가 어렵습니다. –

+0

이 클래스들은 중첩되어 있습니까? 그렇다면 반성과 함께 시도해 볼 수 있습니다. – Vinicius

+0

나는 그런 특징을 알고 있다고 말할 수 없다. (ReSharper *는 회원에게 가기를 사용할 때이 지식이있다.) 새로운 유형의 완성으로 [ReSharper에 제안] (http://youtrack.jetbrains.com/issues/RSRP) 할 수 있습니까? –

답변

3

나는 그러한 단축키를 알 수 없다. 당신은 이동] 기호 탐색 사용 분명히 경우 (IntelliJ: 구성 하시려면 Ctrl-Shift-Alt를-T 또는 Visual Studio: 구성 하시려면 Ctrl-Shift-Alt를-T), 당신은 당신의 코드에있는 모든 VolumeClass 속성 목록 수 :

http://i.imgur.com/YP7nd.png

그러나 이것은 당신이 원하는 것이 아닙니다. 가장 가까운 제안은 Import Symbol 완료 (Ctrl - Alt - )를 입력 한 다음 유형의 첫 글자를 입력하는 것입니다. 전 세계적으로 사용할 수있는 모든 유형을 표시하고 필요할 때 적절한 using 지시어를 가져옵니다. - 템플릿 탐색기 (ReSharper에서 6) ReSharper에서에

  1. 이동합니다

    편집는 또 다른 아이디어는 처음 몇 글자를 기반으로 문을 생성 할 수 있습니다 것 ReSharper에서 라이브 템플릿이 생성하는 것입니다

  2. 에서 라이브 템플릿 탭, 예를 들어, 바로 가기 vc을 이름 보내기 새 템플릿 버튼
  3. 을 클릭합니다. 선택적으로 설명을 작성하십시오. 본문 영역에서
  4. 입력 : $prefix$.Volumeclass
  5. 저장하고 이제 다음 코드 vc 및 속성이 클래스의 이름을 입력 할 수있는 템플릿 탐색기

을 종료합니다.

희망이 있습니다.

+0

확인. * 스크린 샷에 표시된 것처럼 * 탐색으로 이동 *하는 것을 의미합니까? 가능한 모든 클래스 목록을 얻으므로 적어도이 방법이 좋습니다. 그런 다음 * ESC *를 누른 다음 기억 된 클래스 이름을 입력합니다. – brgerner

+0

음, 물론, 미안하지만, 나는 대답을 고쳐 줄거야! 감사 :) –

0

당신은 .NET Framework 클래스 라이브러리에서 수천 클래스의 수만 있다는 것을 먼저 클래스 이름

AClass.<now the list of static members appears> 

메모를 입력해야합니다. 수백만 회원이 자동으로 나타나길 원하십니까?

1

클래스를 공통 네임 스페이스에 넣을 수 있습니다. 그런 다음 네임 스페이스 이름 다음에 점을 입력하면 클래스 목록이 나타납니다. 클래스를 선택한 후에도 Volumeclass 속성을 추가해야합니다.

이 목적을 위해 네임 스페이스 계층 구조를 다시 구성하지는 않지만 논리적으로 함께 그룹화해야하는 경우 좋은 옵션 일 수 있습니다. 네임 스페이스 이름이 긴 경우 선택적으로 다음을 추가 할 수 있습니다. using alias directive (예 : using Prods = MyCompany.MyProject.Products;)

관련 문제