2008-08-06 58 views

答えて

237

よりもむしろCTRL + Kを使用して、Xあなたもちょうどpropを入力し、二回

+65

そして、それを生成する "propg" +タブを忘れることはありませんが、プライベートセッターを使用してください。 –

+0

完全に気の利いた。ありがとう! – Stumblor

+0

Visual C#でさらに便利なコードスニペットについてはhttps://msdn.microsoft.com/en-us/library/z41h7fat.aspxを参照してください – Titus

1

マシンにVisual Studioがインストールされていない(Linuxを使用しています)が、クラスビルダーへのアクセスを許可するメニューのどこかにウィザードが隠されていたことを覚えています。

このウィザードでは、メソッドと属性を含むすべてのクラスの詳細を定義できます。私がうまく覚えていれば、自動的にセッターとゲッターを作成するようVSに頼むことができるオプションがありました。

私はそれがかなり曖昧だと知っていますが、それをチェックして、あなたがそれを見つけるかもしれません。

29

生成すると、自動生成を意味しますか?それはあなたが何を意味するかはない場合:

のVisual Studio 2008には、このための最も簡単な実装があります。背景には

public PropertyType PropertyName { get; set; } 

これはあなたの財産を保存し、検索されたために暗黙のインスタンス変数を作成します。あなたのプロパティでより多くのロジックを入れたい場合

しかし、あなたはそれのためにインスタンス変数を持っている必要があります:のVisual Studioの

private PropertyType _property; 

public PropertyType PropertyName 
{ 
    get 
    { 
     //logic here 
     return _property; 
    } 
    set 
    { 
     //logic here 
     _property = value; 
    } 
} 

以前のバージョンでは、いつものようにも、この手書きメソッドを使用していました。

+0

C#の標準ではないのは、 '_property'の前ではなく、メンバー名' property_'の後ろのダッシュです。 – Julen

+1

@Julen - 私は常に_propertyの規約を見てきました。 –

7

Visual Studio 2005以降を使用している場合は、insert snippetコマンドを使用してsetter/getterをすばやく作成できます。あなたのコードを右クリックし、スニペットの挿入(Ctrl + kx)をクリックし、リストから「prop」を選択します。お役に立てれば。

46

Visual Studioは、プライベート変数からプロパティを生成します機能を持っているタブを打つことができます。

変数を右クリックするとコンテキストメニューが表示され、「リファクタリング」項目をクリックします。カプセル化フィールドを選択します。これは、変数のgetter/setterプロパティを作成します。

多くのゲッター/セッターを作成しなければならない場合、私はこのテクニックのファンではありません。私はこのバグを私フィールドの直下に置きます私は通常私のプライベートフィールドをまとめてグループ化しているので、このVisual Studioの機能はクラスのフォーマットを壊してしまいます。

+10

残念ながら、このオプションはVisual StudioのExpressエディションでは提供されていません。 – Toby

+11

shourtcutもあります - 私はこの方法で優先します:) - CTRL + R + E – Vukasin

+1

"オプションはエクスプレスエディションでは提供されていません" - ああ、彼らはあなたに無料で完全な製品を提供しませんでしたか? MS、それらの悪魔。 –

1

'prop'スニペットと自動プロパティに加えて、既存のフィールドを選択してプロパティで公開するためのリファクタリングオプションがあります。また、 'prop'実装が気に入らない場合は、独自のスニペットを作成することもできます。さらに、resharperのようなサードパーティのリファクタリングツールは、さらに多くの機能を提供し、より高度なスニペットを簡単に作成できるようにします。あなたがそれを買う余裕があればResharperをお勧めしたいと思います。...>を生成(またはAltキー + を打つインを囲むクラス内)と - >コード -

http://msdn.microsoft.com/en-us/library/f7d3wz0k(VS.80).aspx http://www.jetbrains.com/

4

あなたはReSharperのを使用している場合は、ReSharperのメニューに入ります

25

また、「propfull」を使用してTABを2回ヒットすると、getおよびsetが生成された変数とプロパティが生成されます。

+0

これはより有用なものですが、私はいつもそれを忘れています –

+0

私はXMLシリアル化を行っていて、ショー全体でたくさんのプロパティを産んでいます。私ができるなら100septillion upvotes。ありがとう!編集 - EVEN BETTER、自動ホックスクリプト+ ^これは90000以上の生産性! – Eon

3

キーワードはpropfullです。
それは私がこれは太陽よりも古いですけど、それだけのように、このようにそれをやっているので、私は私の答えとしてこれを投稿すると考えましたプロパティと変数

+0

あなたの答えについての詳しい情報を提供してください、短い説明付きの回答は次の訪問者にはOKではありません... – Kiyarash

+0

エディタでキーワードpropfullを入力すると、private data_type var_nameのようなコードが生成されます。 public data_type var_name1 {get; set;} –

2

を生成します。

私が行ったことは、{get; set;}を追加するだけの自分のスニペットを作成することでした。私はprop > tabがclunkyであることが分かったので私はそれを作った。これにより

<?xml version="1.0" encoding="utf-8"?> 
<CodeSnippets 
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> 
    <CodeSnippet Format="1.0.0"> 
    <Header> 
     <Title>get set</Title> 
     <Shortcut>get</Shortcut> 
    </Header> 
    <Snippet> 
     <Code Language="CSharp"> 
      <![CDATA[{get; set;}]]> 
     </Code> 
    </Snippet> 
    </CodeSnippet> 

、あなたはget > tabを入力し、手動でPropTypeとPROPNAMEを入力し、それがgetセットを追加します。それは魔法のようなものではありませんが、最初にアクセス修飾子を入力する傾向があるので、名前と型を完成させることもできます。

27

私はVisual Studio 2013 Professionalを使用しています。

  • カーソルをインスタンス変数の行に置きます。

    enter image description here

  • を押して、EはCtrl +RはCtrl +キーを組み合わせたり、マウスの右ボタンをクリックし、OKを押して、コンテキストメニューRefactor \ Encapsulate Field...を選択してください。 Preview Reference Changes - Encapsulate Field diaglog、押しボタンApply

    enter image description here



  • enter image description here

  • これが結果です:プロパティを選択するためにも

    enter image description here



あなたは場所カーソル、使用メニュー編集\リファクタリング\カプセル化フィールド...

  • その他の情報: C#3以降です。0(11月19日2007)、私たちはあなたのすべてを選択することができます

private int productID; 

public int ProductID 
{ 
    get { return productID; } 
    set { productID = value; } 
} 

は、Visual Studioのコミュニティ版2015年

public int ProductID { get; set; } 
1

になる(これは単にsyntactic sugarある)Auto-Implemented Propertiesを使用することができますフィールドを入力し、ctrl + .を押してプロパティを自動的に生成します。フィールドの代わりにプロパティを使用するかどうかを選択する必要があります。

0

enter image description hereビジュアルスタジオツールの代わりに、オンラインツール を使用して簡単にC#プロパティを生成できます。 c# propery generator.アンドロイドスタジオであなただけの簡単なプレスAltキー + イン

0

変数を宣言した後、あなたはコードを生成する際にゲッターとセッターを取得します。

関連する問題