VS编辑器自定义代码生成片段

1. VS代码片段管理器

vs编辑器支持自定义代码片段来快速生成代码,在工具 (Tools) > 代码片段管理器 (Code Snippet Manager) 中 进行管理

2. 自定义代码片段

2.1 编写代码片段xml文件(xxx.snippet)

<?xml version="1.0" encoding="utf-8" ?>
<!-- CodeSnippets 根元素定义代码片段的命名空间 -->
<CodeSnippets xmlns="<http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet>">
    <!-- CodeSnippet 元素定义一个代码片段 -->
    <CodeSnippet Format="1.0.0">
        <!-- Header 元素包含代码片段的元数据 -->
        <Header>
            <!-- 标题:代码片段的名称 -->
            <Title>Routed Event</Title>
            <!-- 快捷方式:输入此快捷方式可以插入代码片段 -->
            <Shortcut>routevent</Shortcut>
            <!-- 描述:代码片段的描述信息 -->
            <Description>Code snippet for a routed event</Description>
            <!-- 作者:代码片段的作者 -->
            <Author>YourName</Author>
            <!-- SnippetTypes 元素定义代码片段的类型 -->
            <SnippetTypes>
                <!-- SnippetType 元素指定代码片段的类型为 Expansion -->
                <SnippetType>Expansion</SnippetType>
            </SnippetTypes>
        </Header>
        <!-- Snippet 元素包含代码片段的主要内容 -->
        <Snippet>
            <!-- Declarations 元素包含代码片段中的可替换部分 -->
            <Declarations>
                <!-- Literal 元素定义一个可替换的占位符 -->
                <Literal>
                    <!-- ID:占位符的名称 -->
                    <ID>EventName</ID>
                    <!-- ToolTip:占位符的工具提示信息 -->
                    <ToolTip>Event name</ToolTip>
                    <!-- Default:占位符的默认值 -->
                    <Default>MyEvent</Default>
                </Literal>
                <!-- 定义另一个可替换的占位符 -->
                <Literal>
                    <ID>OwnerClass</ID>
                    <ToolTip>Owner class name</ToolTip>
                    <Default>MyClass</Default>
                </Literal>
                <!-- 定义第三个可替换的占位符 -->
                <Literal>
                    <ID>HandlerType</ID>
                    <ToolTip>Handler type</ToolTip>
                    <Default>RoutedEventHandler</Default>
                </Literal>
            </Declarations>
            <!-- Code 元素包含实际的代码内容 -->
            <Code Language="csharp"><![CDATA[
public static readonly RoutedEvent $EventName$Event = EventManager.RegisterRoutedEvent(
    "$EventName$", RoutingStrategy.Bubble, typeof($HandlerType$), typeof($OwnerClass$));

public event $HandlerType$ $EventName$
{
    add { AddHandler($EventName$Event, value); }
    remove { RemoveHandler($EventName$Event, value); }
}

protected void Raise$EventName$()
{
    RoutedEventArgs args = new RoutedEventArgs($EventName$Event);
    RaiseEvent(args);
}
]]></Code>
        </Snippet>
    </CodeSnippet>
</CodeSnippets>

2.2 代码片段导入

在 Visual Studio 中,导入刚刚创建的代码片段:

  • 打开 Visual Studio。
  • 选择 工具 (Tools) > 代码片段管理器 (Code Snippet Manager)
  • 在“代码片段管理器”中选择语言为 Visual C#
  • 点击 导入 (Import) 按钮,选择刚刚创建的 routedevent.snippet 文件并导入。

2.3 使用

在 C# 文件中输入 routevent 然后按 Tab 键两次,就会自动生成一个路由事件的模板。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值