Visual Studioでプロパティを作成するショートカット?


259

C#で非常に高速にプロパティを作成する人を見たことがありますが、どうやってそれを実現したのですか?

プロパティを作成するためにVisual Studio(現在Visual Studio 2010を使用)で利用できるショートカットは何ですか?

C#を使用しています。

例えば、

public string myString {get;set;}

回答:


561

prop」と入力してから、Tabキーを2回押します。それは以下を生成します。

public TYPE Type { get; set; }

次に、「タイプ」と「タイプ」を変更します。

public string myString {get; set;}

また、「propfull」と入力して完全なプロパティを取得し、タブを2回クリックすることもできます。これにより、フィールドと完全なプロパティが生成されます。

private int myVar;

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

7
「コードスニペット」に名前を付けるのを忘れた:)
PVitt

@PVitt:ありがとう、名前がわからなかった:-)
Amra

12
また、propgは以下を作成します。public int MyProperty {get; プライベートセット; }
Amc_rtty 2012年

3
あなたはまた、編集1033フォルダVC#\スニペット\ \ビジュアルC#\」あなたのVisual Studioの下でのコードスニペットは、インストールすることができます私は、バッキングフィールド作るために私のpropfull.snippet編集した。protected代わりのをprivate、例えば。
ポールスミス

9
PとTABを2回入力するだけで、intプロパティも作成されます。
Adnan Bhatti 2013

78

Amraの回答に加えて、次のように入力して他のスニペットを見つけることができます

Ctrl+ KCtrl+X

これは、Visual StudioのEdit.InsertSnippetにマップされ、使用可能なスニペットの完全なリストを表示します。

また、Toolsメニューにあるスニペットマネージャーを使用して、独自のスニペットを設定できることも覚えておいてくださいCode Snippets Manager...。基本的には、ファイルを作成*.snippetし、コードスニペットマネージャーの[インポート]ボタンを使用してVisual Studioに追加します。完全なチュートリアルについては、ドキュメントにアクセスできます。チュートリアル:コードスニペットを作成します


Visual Studioでは、コードスニペットはVisual Studioとは少し異なります。あなたは次のように入力して、すべてのスニペットにアクセスすることができますCtrl+ Shift+ Pと入力しsnippet。二つのオプションが利用できるように、必要があるInsert SnippetPreferences: Configure User Snippets

前者はスニペットのリストからスニペットを挿入し(ステータスバーに表示される言語モードを使用)、後者では任意の言語モード用に独自のスニペットを作成できます。

ショートネームがわかっている場合は、それを入力してTab、スニペットを展開するために使用できます。C#のプロパティを挿入するために使用可能な、3つのスニペット持っているproppropfullpropg、異なる目的のために。


遅いですが、ショートカットの完全なリスト+1が表示されます。
Amra

1
わたしは、あなたを愛しています!これをしばらく探していました
SageMage

24

フィールド内にカーソルを置いてprivate int _i;から、[編集]メニューまたはRMB-リファクタリング-フィールドをカプセル化...(CtrlRCtrlE)を使用して、標準のプロパティアクセサーを作成します。


1
誰もが同じキーボードレイアウトを使用しているわけではありません(ReSharperらは言うまでもありません)。メニューで同じ機能を見つけることができる場所に追加するとよいでしょう。
sliderhouserules 14

11

「propfull」と入力します。使用する方がはるかに優れており、プロパティとプライベート変数を生成します。

「propfull」と入力してからTAB2回入力します。


1
フルプロパティが自動プロパティよりも優れているのはなぜですか?なぜ余分なフィールドでコードを乱雑にするのですか?
カイルデラニー

1
セッターまたはゲッターで何かを行う必要がある場合。
joe、

8

Amraの提案に従って"prop" + Tab+ Tabを入力した後、プロパティのタイプ(デフォルトを置き換えるint)を入力し、別のタブを入力して、プロパティ名(デフォルトのMyPropertyを置き換える)を入力できます。を押して終了しEnterます。


6

Alt+ R+ Fは変数宣言からプロパティを作成するための正しいものだと思います


2
+1これは実際に私が探していたものです。既存の変数のプロパティを作成するからです。
AgentKnopf 2013年

1
hm ..それは私のためにファイルを縮小しています。VS2012で私のために意図したとおり、これは動作しませんでした
アマル

6

から始まる:

private int myVar;

「myVar」を選択して右クリックし、「リファクタリング」を選択して「フィールドをカプセル化」を選択します。

自動的に作成されます:

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

または、Ctrl+ R+を押してショートカットすることもできますE


Visual Studioのバージョンは何ですか?Visual Studio 2008にあるように表示されません
ピーター・モーテンセン

VS 2010にはさまざまなコードリファクタリングオプションが付属しています。新しいバージョンを使用する必要があります。
EmrahEsmeroğlu2015年

3

Visual Studioで書くとき、

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

ReSharperはそれを次のように変換することを提案し続けます:

public string TypeString => Type.ToString();

しかし、最初のものは、ReSharperが示唆するよりも読みやすいと思います
Mahdi Alkhatib

3
これはどのように質問に答えますか?
Peter Mortensen

3

IDEで気に入ったのは、次のようないくつかの変数を記述できることです。

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

変数名は小文字で始まり、ブロック全体を選択して、Ctrl+ RCtrl+ E、Apply を押していることに注意してください。プロパティは大文字で生成されます:

    public int Id
    {
        get
        {
            return id;
        }

        set
        {
            id = value;
        }
    }


これは実際には質問の答えにはなりませんね。
mrun 2018

これは私が探していた一種のショートカットでしたが、あなたは正しいです。私の答えは、ショートカットを適用した後、編集なしでプロパティを準備できるように変数を準備する方法に焦点を当てています。
Jaro64

これは私が探していた一種のショートカットで、このページにたどり着きました。元の質問は、C#でプロパティを非常に高速に作成する方法です。これの下の多くのユースケースでは確かに、これはプライベートフィールドがあり、これをパブリックフィールドにすることを避けたいところです(これは私の場合です)。私のプライベートフィールドを記述していて、完全なパブリックプロパティをできるだけ早く取得したい場合、これはこの大規模なサブセットの問題に完全に答えていると思います。シンプル。
ウィル・クロックスフォード、


2

に行く

ツール>>オプション>>テキストエディター>> C#>> IntelliSense

スニペットの動作セクションの下:

[常にスニペットを含める]が選択されていることを確認します。

私もそれがあなたのために働くことを望みます。




0

VsVimを使用すると、コードスニペットは少しおかしく見えるようです。私がここにたどり着いたときに探していたショートカットははるかに簡単です:メンバー名タイプの後{g;s;

区切り文字の自動クローズがオンになっているため、右中かっこがに表示され{、セミコロンを入力すると、getおよびsetのオートコンプリートがトリガーされます。

これはVS2013とVS2015で動作し、VS2012は自動的にブレースマッチングを行いません。


0

Visual Studio 2017コミュニティでは、キーはCtrl +です。


0

C#の場合:

private string studentName;

セミコロン(;)の後の行の終わり

Ctrl + R + E

次のようなポップアップウィンドウが表示されます。 ここに画像の説明を入力してください [適用]をクリックするか、Enterキーを押すと、次のプロパティコードが生成されます。

public string StudentName
        {
            get
            {
                return studentName;
            }

            set
            {
                studentName = value;
            }
        }

VBの場合:

Private _studentName As String

行の終わり(文字列の後)で、プロパティの最後に数値を追加するため、先頭に_(アンダースコア)を配置してください。

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.