为什么“propdp”代码片段不使用 nameof 运算符作为注册属性的名称
本文关键字:运算符 注册 属性 nameof propdp 代码 片段 为什么 | 更新日期: 2023-09-27 18:34:29
如果您插入代码片段 propdp,它不会在 DepencendyProperty.Register 方法的第一个参数中使用 nameof 运算符作为属性名称,它会创建如下所示的内容:
public string Text
{
get { return (string)GetValue(TextProperty); }
set { SetValue(TextProperty, value); }
}
// Using a DependencyProperty as the backing store for Text. This enables animation, styling, binding, etc...
public static readonly DependencyProperty TextProperty =
DependencyProperty.Register("Text", typeof(string), typeof(MyContentControl), new PropertyMetadata(""));
如果您使用运算符名称,显然会更好,如下例所示:
public string Text
{
get { return (string)GetValue(TextProperty); }
set { SetValue(TextProperty, value); }
}
// Using a DependencyProperty as the backing store for Text. This enables animation, styling, binding, etc...
public static readonly DependencyProperty TextProperty =
DependencyProperty.Register(nameof(Text), typeof(string), typeof(MyContentControl), new PropertyMetadata(""));
您可以按照以下步骤修改代码片段:
- 找到代码段的文件。选择菜单选项工具/代码段管理器...。将显示"代码段管理器"对话框。
- 在">语言">中,选择">CSharp"。
- 打开 NetFX30,然后选择">定义依赖项属性"。你将在"位置">中看到文件的路径。应该在 C:''Program Files (x86(''Microsoft Visual Studio 14.0''VC#''Snippets''1033''NetFX30 中
打开文件并将宏的定义从
public static readonly DependencyProperty $property$Property =
DependencyProperty.Register("$property$", typeof($type$), typeof($ownerclass$), new PropertyMetadata($defaultvalue$));
自
public static readonly DependencyProperty $property$Property =
DependencyProperty.Register(nameof($property$) , typeof($type$), typeof($ownerclass$), new PropertyMetadata($defaultvalue$));
并保存(请记住以管理员身份打开文本编辑器(。
重新启动 Visual Studio。