【发布时间】:2011-03-01 08:55:59
【问题描述】:
我修改了我的 .csproj 文件以强制生成的状态机代码文件“依赖于”控件。它工作正常,但问题是当我双击时,它默认打开设计器,而不是代码编辑器。 (VS 自动添加了 SubType 'Form')
有没有办法解决这个默认行为(因为 VS 似乎能够为 .Designer.cs 解决)?
(顺便说一句,我知道VSCommands 插件,但这并没有改变问题)
【问题讨论】:
我修改了我的 .csproj 文件以强制生成的状态机代码文件“依赖于”控件。它工作正常,但问题是当我双击时,它默认打开设计器,而不是代码编辑器。 (VS 自动添加了 SubType 'Form')
有没有办法解决这个默认行为(因为 VS 似乎能够为 .Designer.cs 解决)?
(顺便说一句,我知道VSCommands 插件,但这并没有改变问题)
【问题讨论】:
SubType 的主要问题是在大多数情况下后台编译器会覆盖它的值。发生的情况是,如果您手动更改 *.cs 或 *.vb 等文件的 SubType,编译器会将其更改回它认为最好的任何内容。
我曾尝试使用 VS SDK 以编程方式更改该值,但目前似乎无法阻止编译器将其更改回来。
此属性是可读写的,但编译器可能会覆盖该值。例如,Windows.Forms.Form 项的 SubType 可以通过自动化更改为“Code”,但编译器会将 SubType 重置为“Form”。
【讨论】: