【发布时间】:2011-09-19 10:00:50
【问题描述】:
完整的 Windows 操作系统的 Windows 窗体是否有一些编译符号,所以当设计人员要编译代码时,我可以使用预处理器指令有条件地编译?
Compact Framework 项目有,但我在完整的 Windows 窗体项目中找不到这样的符号。
示例代码:
#if DESIGNTIME
#endif
【问题讨论】:
-
设计器不编译代码。所以不行。在您的代码中使用 this.DesignMode。
-
但请检查 CF Windows Forms 是否具有 NETCFDESIGNTIME 编译符号。设计者不编译代码,但设计者需要最新的编译代码。
-
只是在项目属性中设置的。项目+属性,构建选项卡,条件编译符号设置。 pcreview.co.uk/forums/netcfdesigntime-t1298386.html
-
@Hans Passant,感谢您提供的信息,但我真的知道这一点。这与添加自定义符号无关。 符号必须由编译器的调用者 - Visual Studio 设计器 - 以某种方式定义。
-
“设计师要编译代码”是什么意思? Designer 不会编译代码,它会生成代码。也许您在谈论容器的设计/运行时模式?但这仅适用于控件。问题不清楚。