日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Visual Studio 的代码片段(Code Snippet)功能

發布時間:2024/1/17 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Visual Studio 的代码片段(Code Snippet)功能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

??? 1、概述

???? 在 Visual Studio 中,有一個快捷編輯代碼的功能,比如當我們在 VS 編輯器(C#)中寫出

關鍵字 foreach 后,敲擊一下 Tab 鍵,VS 就幫我們自動補全:(插入代碼段的快捷鍵 Ctrl + K + X)

foreach (var item in collection){}

?

???? ?? 我的電腦是? Windows8?的系統,編輯器版本是 Visual Studio 2012,編輯器默認安裝的代碼片段路徑:

???? C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC#\Snippets\2052\Visual C#


???? 同時 VS 也提供了方便開發者自定義代碼片段,文件默認存放路徑:

???? C:\Users\boqiong\Documents\Visual Studio 2012\Code Snippets\Visual C#\My Code Snippets

????

打開 VS 的“代碼段管理器”: 工具 ---> 代碼段管理器? (快捷鍵:Ctrl + K + B)

可以把自定義的代碼段文件通過點擊“導入”按鈕,添加到自己的代碼段文件夾(My Code Snippets)

? 2、編輯自己的代碼段???????

??? snippet 是xml文件,以.snippet后綴名,下面的自定義代碼段的文件名為:sldpc.snippet

??? 這里自定義一個 Silverlight 中的依賴屬性代碼段:

<?xml version="1.0" encoding="utf-8"?> <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"><CodeSnippet Format="1.0.0"><Header><Title>Silverlight DependencyProperty</Title><Shortcut>sldpc</Shortcut><Description>Silverlight 依賴屬性(DependencyProperty)的定義</Description><Author>dbq</Author><SnippetTypes><SnippetType>Expansion</SnippetType></SnippetTypes></Header><Snippet><Declarations><Literal Editable="true"><ID>type</ID><ToolTip>屬性類型</ToolTip><Default>int</Default><Function></Function></Literal><Literal Editable="true"><ID>property</ID><ToolTip>屬性名稱</ToolTip><Default>Name</Default><Function></Function></Literal><Literal Editable="true"><ID>defaultvalue</ID><ToolTip>默認值</ToolTip><Default>0</Default><Function></Function></Literal><Literal Editable="false"><ID>ownerclass</ID><ToolTip>該依賴屬性所屬的類</ToolTip><Default>ClassNamePlaceholder</Default><Function>ClassName()</Function></Literal><Literal Editable="true"><ID>description</ID><ToolTip>描述</ToolTip><Default>該依賴屬性的描述</Default><Function></Function></Literal></Declarations><Code Language="csharp"><![CDATA[ #region $property$ (DependencyProperty)/// <summary> /// $description$ /// </summary> public $type$ $property$ {get { return ($type$)GetValue($property$Property); }set { SetValue($property$Property, value); } } public static readonly DependencyProperty $property$Property = DependencyProperty.Register("$property$", typeof($type$), typeof($ownerclass$), new PropertyMetadata($defaultvalue$, new PropertyChangedCallback(On$property$Changed)));private static void On$property$Changed(DependencyObject sender, DependencyPropertyChangedEventArgs args) { // 獲取自身的引用$ownerclass$ source = ($ownerclass$)sender;// 處理邏輯$type$ newValue = ($type$)args.NewValue; }#endregion $end$]]></Code></Snippet></CodeSnippet> </CodeSnippets>

??在 VS 中,自定義一個類 MyClass,該類繼承自 DependencyObject,在頁面中敲如 sldpc,彈出智能提示:

? 敲一下 Tab 鍵,則自動補全代碼:

??? 繼續點擊 Tab 鍵,可以在關鍵字之間切換。

?


節點說明:

<Title>表示此代碼段標題

<Shortcut>設置快捷鍵

<Description>對代碼段的描述

<SnippetTypes>可以包含多個<SnippetType>其取值有三種Expansion、SurroundsWith、Refactoring 。Expansion允許代碼插入在光標處;SurroundsWith允許代碼圍繞在選中代碼兩邊;Refactoring指定了C#重構過程中所使用的Snippet,在自定義Snippet中不能使用。如果該值不做設置,則Snippet可以放在任何地方。

<Snippet>節點是實現代碼管理的地方,其包含四個子節點<Code><Declarations><Imports><References>

1.<Code>

包含<![CDATA[]]>中,放置模版代碼,此節點設置Language(C# VB XML),Kind(類型:如方法體,方法聲明),Delimiter(分隔符,默認值是$)

?

2.<Declarations>

包含多個<Literal>和<Object>節點,<Literal>用于指定文本值<Object>用于聲明模版對象。筆者自理解為一個函數。以便code調用.

3.<Imports>

引入命名空間,只支持vb .? - -#.

4.<References>

添加程序集引用,只支持vb .? - -#.

?

?

函數只適合于C# 總共3個函數

1.GenerateSwitchCases(EnumerationLiteral),根據枚舉生成switch代碼.

2.ClassName() 返回類名:

<?xml version="1.0" encoding="utf-8"?> <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"><CodeSnippet Format="1.0.0"><Header></Header><Snippet><Declarations><Literal Editable="false"><ID>classname</ID><Function>ClassName()</Function><Default>ClassNamePlaceholder</Default></Literal></Declarations><Code Language="csharp"><!--[CDATA[ public class $EventHandlerType$ {//to do ....}]]--></Code></Snippet></CodeSnippet></CodeSnippets>

3.SimpleTypeName(TypeName),在Snippet所在的上下文中推斷出TypeName參數的最簡單形式:

<?xml version="1.0" encoding="utf-8"?> <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"><CodeSnippet Format="1.0.0"><Header></Header><Snippet><Declarations><Literal Editable="false"><ID>EventHandlerType</ID><Function>SimpleTypeName(global::System.EventHandler)</Function></Literal></Declarations><Code Language="csharp"><!--[CDATA[ public class $EventHandlerType$ {// to do ... }}]]--></Code></Snippet></CodeSnippet></CodeSnippets>


3、擴展閱讀

??? http://blog.nerdplusart.com/archives/silverlight-code-snippets

轉載于:https://www.cnblogs.com/hebeiDGL/archive/2013/06/14/3136003.html

總結

以上是生活随笔為你收集整理的Visual Studio 的代码片段(Code Snippet)功能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品白嫩极品美女视频 | 影音先锋中文在线 | 五月天婷婷久久 | 日本少妇做爰全过程毛片 | 男女午夜激情 | 午夜试看120秒 | 国产亲伦免费视频播放 | 久久国产视频精品 | 91色国产| 亚洲素人在线 | 天天操天天透 | 久久久午夜 | 538任你躁在线精品免费 | 日本丰满熟妇bbxbbxhd | 欧美国产成人精品一区二区三区 | 亚洲色图 校园春色 | 永久免费视频网站直接看 | 午夜试看120秒 | 激情视频91 | 亚洲小视频| av在线色 | 中文字幕亚洲乱码熟女一区二区 | 91噜噜噜| 久久国产一区 | 久久久一级片 | 看日本黄色录像 | 三上悠亚久久 | 高清av网 | 18久久久 | 黄色一级片在线播放 | caoporn成人| av噜噜噜| 在线观看免费 | 吞精囗交69激情欧美 | 日本久久网站 | 丰满人妻熟妇乱偷人无码 | 国模吧无码一区二区三区 | 日韩女优一区二区 | 婷婷俺去也 | 欧美区一区二区 | 熟妇人妻精品一区二区三区视频 | 精品成人一区二区三区久久精品 | 成人乱人乱一区二区三区一级视频 | 日批免费在线观看 | 国产精品毛片久久 | 99久久久无码国产精品性 | 欧美大片xxxx | 青青青在线视频 | 中文字幕久久熟女蜜桃 | 国模叶桐尿喷337p人体 | 先锋影音资源av | 91久久影院| 完全免费在线视频 | 巨大胸大乳奶电影 | 国产精品福利片 | 成年人在线免费观看视频网站 | 国产精品视频一区在线观看 | 久久久久亚洲AV成人 | 黄色永久网站 | 美女十八毛片 | 国产字幕侵犯亲女 | 熟女国产精品一区二区三 | 天天干天天操天天 | 日韩av一级| 国产伊人精品 | 黑人添美女bbb添高潮了 | 久久精品美女 | 91精品综合久久 | 在线免费福利视频 | 免费操人视频 | 午夜精品久久久久久久久久久久 | 91免费网站 | 直接看的av | 99免费| 美人被强行糟蹋np各种play | av软件在线观看 | 进去里在线观看 | 免费日批视频 | 日本少妇xxxx软件 | 欧美一区二区三区免费观看 | 亚洲天堂第一页 | 国产精品视频专区 | 日本一区二区三区久久久久 | 白丝一区 | 久久久久无码国产精品不卡 | 日韩黄色在线 | 日韩淫| 91网站永久免费看nba视频 | 欧美12--15处交性娇小 | 太久av | 国产又色又爽又黄的 | 欧美日韩性视频 | 国产精在线 | 91美女片黄在线观看91美女 | 精品无码久久久久久久久成人 | youjizz.com最新| 奇米超碰在线 | 天天综合日韩 | 国产一级视频在线观看 |