我在VS 2008中输入prop然后选项卡(或任何VS)。我正在使用Resharper。
我选项卡,再给它一个类型,选项卡,并且在我开始输入之前必须删除属性名称的文本。好的,很好。
现在问题就在这里,我留下了这个问题:
public string Maxlength { get; set; }
是否有一种快速的方式来实现这一点,以便我可以开始填写我的get和set?
public string Maxlength
{
get{;}
set{;}
}
由于某种原因,我还不能快速删除道具。只需要使用快捷方式或与Resharper一样的东西。
答案 0 :(得分:1)
在Visual Studio 2008中,prop
代码段已更改为输出自动实现的属性。要使用扩展get
和set
块的较旧代码段,您需要创建一个新代码段。
这是我创建的一个比Visual Studio为您提供的默认更灵活的一个:
<?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>Code snippet for creating a property</Description>
<Author>Andrew Hare</Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>type</ID>
<Default>String</Default>
<ToolTip>property type</ToolTip>
</Literal>
<Literal>
<ID>fname</ID>
<Default>name</Default>
<ToolTip>field name</ToolTip>
</Literal>
<Literal>
<ID>pname</ID>
<Default>Name</Default>
<ToolTip>property name</ToolTip>
</Literal>
<Literal>
<ID>access</ID>
<Default>public</Default>
<ToolTip>property visibility</ToolTip>
</Literal>
</Declarations>
<Code Language="csharp">
<![CDATA[$type$ $fname$;
$access$ $type$ $pname$
{
get { return this.$fname$; }
set { this.$fname$ = value; }
}$end$]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>
答案 1 :(得分:1)
如果要“填写”自动转换,请转到变量名并按 Alt + Ins 并选择“带有支持字段的属性” - 它将导致:
private string m_Maxlength;
public string Maxlength
{
get { return m_Maxlength; }
set { m_Maxlength = value; }
}
或者您可以更改实时模板(ReShaper - &gt;实时模板 - &gt;预定义模板 - &gt; C# - &gt; prop“ - 然后编辑:
public $TYPE$ $NAME$ { get {$END$;} set{;} }
答案 2 :(得分:0)
ReSharper可能正在接管该属性片段。您可能想要查看ReSharper |实时模板...菜单。