![](/img/trans.png)
[英]Shortcut to create automatic properties using Visual Studio 2008/2010 or Resharper 5
[英]Shortcut to create properties in Visual Studio?
我看到有些人在 C# 中創建屬性的速度非常快,但他們是如何做到的?
Visual Studio(目前使用 Visual Studio 2010)中有哪些快捷方式可用於創建屬性?
我正在使用 C#。
例如,
public string myString {get;set;}
你可以輸入“ prop ”,然后按兩次tab鍵。 這將生成以下內容。
public TYPE Type { get; set; }
然后你改變“類型”和“類型”:
public string myString {get; set;}
您還可以通過鍵入“propfull”獲得完整的屬性,然后按兩次 Tab 鍵。 這將生成字段和完整屬性。
private int myVar;
public int MyProperty
{
get { return myVar;}
set { myVar = value;}
}
除了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
,用於不同的目的。
將光標放在您的字段內private int _i;
然后 Edit 菜單或 RMB - Refactor - Encapsulate Field... ( Ctrl R , Ctrl E ) 創建標准屬性訪問器。
輸入“propfull”。 使用起來要好得多,它會生成屬性和私有變量。
鍵入“propfull”,然后兩次TAB 。
按照 Amra 的建議鍵入“prop”+ Tab + Tab 后,您可以立即鍵入屬性的類型(將替換默認的int
),鍵入另一個選項卡並鍵入屬性名稱(將替換默認的 MyProperty)。 按Enter完成。
我認為Alt + R + F是從變量聲明創建屬性的正確方法
從:
private int myVar;
當您選擇“myVar”並右鍵單擊時,然后選擇“重構”並選擇“封裝字段”。
它會自動創建:
{
get { return myVar; }
set { myVar = value; }
}
或者您可以通過按Ctrl + R + E來快捷方式。
我在 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;
}
}
等。
在 Visual Studio 中編寫時,
public ServiceTypesEnum Type { get; set; }
public string TypeString { get { return this.Type.ToString();}}
ReSharper將繼續建議將其轉換為:
public string TypeString => Type.ToString();
前往
工具 >> 選項 >> 文本編輯器 >> C# >> IntelliSense
在代碼段行為部分下:
確保選中“始終包含片段”。
我希望它也適用於你。
輸入P + Tab + Tab 。
更改數據類型,按TAB ,更改屬性名稱,然后按End + Enter 。
如果您使用的是 Visual Studio 2013、2015 或更高版本,只需單擊下面的鏈接。 它將為您提供 Visual Studio 中的完整快捷方式!
使用 VsVim 代碼片段似乎有點有趣。 當我來到這里時,我正在尋找的快捷方式要簡單得多:在成員名稱之后鍵入{ g ; S;
我打開了分隔符自動關閉功能,因此關閉大括號出現在{ 上,並且鍵入分號會觸發 get 和 set 的自動完成。
它適用於 VS2013 和 VS2015,而 VS2012 只是缺少自動大括號匹配。
在 Visual Studio 2017 社區中,關鍵是 ctrl + 。
在 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
在行尾(字符串之后)按,確保將 _(下划線) 放在開頭,因為它會在屬性末尾添加數字:
Ctrl + R + E
單擊 Apply 或按 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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.