如何从自定义用户控件中删除属性

时间:2013-04-16 16:25:01

标签: c# winforms visual-studio

已将属性添加到自定义用户控件。从那时起,Visual Studio已将生成的代码插入到使用该用户控件的每个表单中。现在我们要删除该属性,因为它不会被使用。但显然这样做会导致编译错误。有没有办法告诉Visual Studio从所有生成的代码中删除属性?在我看来,像[Obsolete()]这样的东西应该足以告诉Visual Studio将其从生成的代码中删除。还有其他方法吗?

4 个答案:

答案 0 :(得分:3)

查看DesignerSerializationVisibilityAttribute,尤其是DesignerSerializationVisibility.Hidden选项。

警告:不幸的是,您必须在设计模式下打开每个表单/控件,以便可以重新生成代码(如果它还没有这样做)。

答案 1 :(得分:2)

你可以尝试使用一些重构工具,比如Resharper。

http://www.jetbrains.com/resharper/

添加“Obsolete”属性只会生成编译器警告,但不会删除任何代码。

答案 2 :(得分:2)

正规救援!我通常做的是打开“在文件中替换”对话框(Ctrl + Shift + H),选中“使用正则表达式”复选框,并用空字符串替换.+\.SomeProperty.+的实例。

确保在之前将更改提交到存储库,这样如果出现任何问题,您可以恢复到工作状态。

答案 3 :(得分:0)

保留并标记为Obsolete