Visual Studio에서 속성을 만드는 바로 가기?


259

C #에서 속성을 만드는 사람들이 정말 빨리 보였지만 어떻게 했습니까?

Visual Studio (현재 Visual Studio 2010 사용)에서 속성을 만들기 위해 사용할 수있는 바로 가기는 무엇입니까?

C #을 사용하고 있습니다.

예를 들어

public string myString {get;set;}

답변:


561

" prop "를 입력 한 다음 tab을 두 번 누를 수 있습니다. 그러면 다음이 생성됩니다.

public TYPE Type { get; set; }

그런 다음 "TYPE"과 "Type"을 변경하십시오.

public string myString {get; set;}

"propfull"을 입력 한 다음 전체 속성을 두 번 탭해도됩니다. 그러면 필드와 전체 속성이 생성됩니다.

private int myVar;

public int MyProperty
{
    get { return myVar;}
    set { myVar = value;}
}

7
"Code Snippet"이라는 이름을 잊어 버렸습니다 :)
— PVitt

@PVitt : 감사합니다. 이름 :-)
— Amra

12
또한 propg는 다음을 생성합니다. public int MyProperty {get; 개인 세트; }
— Amc_rtty

3
Visual Studio 설치 아래의 VC # \ Snippets \ 1033 \ Visual C # \ "폴더에서 코드 스 니펫을 편집 할 수도 있습니다. 예를 들어 propfull.snippet을 편집하여 백업 필드를 protected대신 만들었습니다 private.
— Paul Smith

9
P와 TAB을 두 번 입력하면 int 속성도 만들어집니다.
— Adnan Bhatti

78

Amra의 답변 외에도 다음을 입력하여 다른 스 니펫을 찾을 수 있습니다

Ctrl+ K, Ctrl+X

내 Visual Studio에서 Edit.InsertSnippet에 매핑되어 사용 가능한 스 니펫의 전체 목록을 보여줍니다.

또한 Tools메뉴 에서 사용할 수있는 스 니펫 관리자를 사용하여 자신의 스 니펫을 구성 할 수 있습니다 Code Snippets Manager.... 기본적으로 파일을 만들고 *.snippet코드 조각 관리자에서 가져 오기 단추를 사용하여 파일 을 Visual Studio에 추가합니다. 전체 자습서를 보려면 문서로 이동하십시오. 연습 : 코드를 작성합니다 .


Visual Studio 코드 스 니펫은 Visual Studio와 약간 다르게 처리됩니다. 당신은 입력하여 모든 조각에 액세스 할 수 있습니다 Ctrl+ Shift+ P와 입력 snippet. 두 가지 옵션을 사용할 수,해야 Insert Snippet하고 Preferences: Configure User Snippets.

전자는 스 니펫 목록에서 스 니펫을 삽입하고 (상태 표시 줄에서 볼 수있는 언어 모드 사용) 후자는 스 니펫을 사용하여 모든 언어 모드에 대한 스 니펫을 작성할 수 있습니다.

짧은 이름을 알고 있다면 해당 이름을 입력 Tab하고 스 니펫을 확장하는 데 사용할 수 있습니다 . C #을 속성을 삽입하면 사용할 수, 세 조각이 prop, propfull그리고 propg, 다른 목적으로합니다.


속도는 느리지 만 전체 컷 +1 목록을 얻습니다.
— Amra

1
사랑해! 한동안 이것을 찾고 있었다
— SageMage

24

필드 안에 커서를 놓고 private int _i;편집 메뉴 또는 RMB-리 팩터-필드 캡슐화 ... ( CtrlR, CtrlE)를 사용하여 표준 속성 접근자를 만듭니다.


1
모든 사람이 동일한 키보드 레이아웃을 사용하는 것은 아닙니다 (ReSharper 등은 말할 것도 없습니다). 메뉴에서 이와 동일한 기능을 찾을 수있는 위치를 추가하는 것이 좋습니다.
— sliderhouserules

11

"propfull"을 입력하십시오. 사용하는 것이 훨씬 낫고 속성과 개인 변수를 생성합니다.

"propfull"을 입력 한 다음 TAB두 번 입력하십시오.


1
전체 속성이 자동 속성보다 나은 이유는 무엇입니까? 추가 필드로 코드를 어지럽히는 이유는 무엇입니까?
— Kyle Delaney

1
setter 또는 getter에서 무언가를 해야하는 경우.
— joe

8

Amra가 제안한대로 "prop"+ Tab+ Tab를 입력 한 후에 는 즉시 속성 유형 (기본값을 대체 함 int)을 입력하고 다른 탭을 입력 한 다음 속성 이름 (기본 MyProperty를 대체 함)을 입력 할 수 있습니다. 를 눌러 완료하십시오 Enter.


6

변수 선언에서 속성을 만드는 데 Alt+ R+ F가 올바른 것으로 생각합니다.


2
+1 THIS는 기존 변수에 대한 속성을 생성하기 때문에 실제로 찾고 있습니다. 감사합니다!
— Agent Knopf

1
흠 .. 그것은 나를 위해 파일을 축소하고 있습니다. 이것은 VS2012
— Ammar

6

에서 시작하다:

private int myVar;

"myVar"를 선택하고 마우스 오른쪽 단추를 클릭 한 후 "리 팩터"를 선택하고 "필드 캡슐화"를 선택하십시오.

자동으로 생성됩니다 :

{
    get { return myVar; }
    set { myVar = value; }
}

또는 Ctrl+ R+ 를 눌러 바로 가기를 할 수 있습니다 E.


어떤 버전의 Visual Studio? Visual Studio 2008에는없는 것 같습니다.
— Peter Mortensen

VS 2010에는 다양한 코드 리팩토링 옵션이 제공됩니다. 최신 버전을 사용해야합니다.
— Emrah Esmeroğlu

3

Visual Studio에서 쓸 때

public ServiceTypesEnum Type { get; set; }
public string TypeString { get { return this.Type.ToString();}}

ReSharper 는 다음과 같이 변환 할 것을 제안합니다.

public string TypeString => Type.ToString();

하지만 첫 번째는 ReSharper에서이 시사하는 것보다 더 많은 읽을 생각
— 마흐디 Alkhatib

3
이것이 어떻게 질문에 대답합니까?
— 피터 Mortensen

3

IDE에서 내가 좋아하는 것은 다음과 같은 몇 가지 변수를 작성할 수 있다는 것입니다.

    private int id;
    private string name;
    private string version;
    private string description;
    private string status;
    private string symbol;

변수 이름은 소문자로 시작한 다음 전체 블록을 선택하고 Ctrl+ R, Ctrl+ E, 적용을 누릅니다 . 속성은 대문자로 생성됩니다.

    public int Id
    {
        get
        {
            return id;
        }

        set
        {
            id = value;
        }
    }

기타


이것은 실제로 질문에 대답하지 않습니까?
— mrun

이것은 내가 찾고 있던 일종의 헛소리 였지만 당신은 옳습니다. 내 대답은 바로 가기를 적용한 후 편집하지 않고 속성을 준비 할 수 있도록 변수를 준비하는 방법에 중점을 둡니다.
— Jaro64

이것은 내가 찾던 일종의 지름길 이었고이 페이지에서 끝났습니다. 원래 질문은 C #에서 속성을 정말 빠르게 만드는 방법입니다. 이 아래의 많은 유스 케이스에서 분명히 개인 필드가 있고 공개 필드로 만드는 것을 피하고 싶을 것입니다 (이 경우는 내 경우입니다). 내 개인 필드를 작성하고 최대한 공공 속성을 최대한 활용하고 싶다면이 큰 사례에서 완벽하게 질문에 대한 답변이라고 생각합니다. 단순함.
— Will Croxford

2

P+ Tab+를 입력하십시오 Tab.

데이터 유형을 변경하고을 누르고 TAB속성 이름을 변경 한 다음 End+를 누릅니다 Enter.


2

이동

도구 >> 옵션 >> 텍스트 편집기 >> C # >> IntelliSense

스 니펫 동작 섹션에서 :

"항상 스 니펫 포함"이 선택되어 있는지 확인하십시오.

나는 그것이 당신에게도 효과가 있기를 바랍니다.




0

VsVim을 사용하면 코드 스 니펫이 약간 재미있게 보입니다. 여기에 도착했을 때 찾고 있던 바로 가기는 훨씬 간단합니다. 멤버 이름 유형 후에{g;s;

구분 기호 자동 닫기가 설정되어 있으므로 닫는 중괄호가에 표시되고 {세미콜론을 입력하면 가져 오기 및 설정에 대한 자동 완성이 트리거됩니다.

VS2013 및 VS2015에서 작동하며 VS2012에는 자동 중괄호 일치 기능이 없습니다.



0

C #에서 :

private string studentName;

세미콜론 (;) 다음 줄 끝에서 Just Press

Ctrl + R + E

다음과 같은 팝업 창이 나타납니다. 여기에 이미지 설명을 입력하십시오 Apply를 클릭하거나 ENTER를 누르면 다음과 같은 속성 코드가 생성됩니다.

public string StudentName
        {
            get
            {
                return studentName;
            }

            set
            {
                studentName = value;
            }
        }

VB에서 :

Private _studentName As String

줄 끝에서 (문자열 뒤) Press, _ (밑줄)은 속성의 끝에 숫자를 추가하므로 시작 부분에 위치해야합니다.

Ctrl + R + E

같은 창이 나타납니다 : 여기에 이미지 설명을 입력하십시오

적용을 클릭하거나 ENTER를 누르면 다음과 같이 끝에 숫자가있는 다음과 같은 속성 코드가 생성됩니다.

Public Property StudentName As String
        Get
            Return _studentName
        End Get
        Set(value As String)
            _studentName = value
        End Set
    End Property

숫자 속성은 다음과 같습니다.

Private studentName As String
 Public Property StudentName1 As String
        Get
            Return studentName
        End Get
        Set(value As String)
            studentName = value
        End Set
    End Property
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.