《深入浅出WPF》学习笔记四.提高效率,code snippets的使用

《深入浅出WPF》学习笔记四.提高效率,code snippets的使用

背景

再跟着视频教程学习Wpf的过程中,发现这个小技巧。很惭愧好几年开发经验,没用过这个东西。

这个信息差还是很让人头疼的,特别在此分享。

code snippets是什么

Code Snippets是插入代码段的意思。‌程序员在编写代码时,‌可以通过编写可复用的代码段来减少输入的工作量,‌这比使用Ctrl+C和Ctrl+V的方法更快且更通用。‌

👉visual studio>工具>代码片段管理器

使用方法以及常见快捷键

输入关键字+Tab+Tab

例如 for+Tab+Tab 则会自动生成for循环

选中i的情况下将i修改成j,按一下Tab,则将i全部替换成j

常见的命令

//ctor 构造函数

//prop 字段

//propfull 完整属性

//propdp依赖属性

如何创建自身的code snippets

根据代码片段生成器找到生成器文件

复制一个文件进行修改propfull

cs 复制代码
<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
	<CodeSnippet Format="1.0.0">
		<Header>
			<Title>propfull</Title>
			<Shortcut>propfull</Shortcut>
			<Description>属性和支持字段的代码片段</Description>
			<Author>Microsoft Corporation</Author>
			<SnippetTypes>
				<SnippetType>Expansion</SnippetType>
			</SnippetTypes>
		</Header>
		<Snippet>
			<Declarations>
				<Literal>
					<ID>type</ID>
					<ToolTip>属性类型</ToolTip>
					<Default>int</Default>
				</Literal>
				<Literal>
					<ID>property</ID>
					<ToolTip>属性名</ToolTip>
					<Default>MyProperty</Default>
				</Literal>
				<Literal>
					<ID>field</ID>
					<ToolTip>支持此属性的变量</ToolTip>
					<Default>myVar</Default>
				</Literal>
			</Declarations>
			<Code Language="csharp"><![CDATA[private $type$ $field$;

	public $type$ $property$
	{
		get { return $field$;}
		set { $field$ = value;}
	}
	$end$]]>
			</Code>
		</Snippet>
	</CodeSnippet>
</CodeSnippets>

修改下面的部分

将文件保存为propn.snippet,并放到propfull所在目录下

重启visual studio,使用propn+Tab+Tab即可生成通知属性代码

结语

水滴石穿,每天都要进步一点点。

制作不易,记得一件三连~

相关推荐
张人玉1 小时前
如何使用Advanced Installer打包C#程序生成安装程序
c#·打包·advanced·installer
葛小白12 小时前
C#数据类型:string简单使用
服务器·数据库·c#
colus_SEU2 小时前
【编译原理笔记】3.4 Tokens Recognization
笔记·编译原理
摇滚侠2 小时前
Spring Boot3零基础教程,KafkaTemplate 发送消息,笔记77
java·spring boot·笔记·后端·kafka
FreeBuf_4 小时前
微软Copilot被用于窃取OAuth令牌,AI Agent成为攻击者帮凶
人工智能·microsoft·copilot
黑科技Python5 小时前
生活中的“小智慧”——认识算法
学习·算法·生活
Yupureki5 小时前
从零开始的C++学习生活 16:C++11新特性全解析
c语言·数据结构·c++·学习·visual studio
青云交5 小时前
Java 大视界 -- Java 大数据在智能教育学习社区互动模式创新与用户活跃度提升中的应用(426)
java·大数据·学习·flink 实时计算·智能教育社区·互动模式创新·用户活跃度
李少兄5 小时前
HTML 表单控件
前端·microsoft·html
曹牧7 小时前
C# 中的 DateTime.Now.ToString() 方法支持多种预定义的格式字符
前端·c#