Self.AutoPostBackControl:=nil

来源:计算机等级考试    发布时间:2012-08-29    计算机等级考试视频    评论

  编辑特别推荐:

  全国计算机等级考试(等考)指定教材

  全国计算机等级考试学习视频

  全国计算机等级考试网上辅导招生

  全国计算机等级考试时间及科目预告

  考试大教育全国计算机等级考试在线测试平台

  全国计算机等级考试资料下载

  全国计算机等级考试论坛

  计算机等级考试四级应用题解析汇总

  2009年下半年全国计算机二级考试时间是2009年9月19日至23日。2009年下半年全国计算机二级考试报名时间会在考前两个月开始报名!更多优质资料尽在考试大论坛 考试大在线题库

  一、问题:
  在BDS2007中,如果系统安装了Dotnet FromeWork 3.5以上版本,则会导致BDS2007进行asp.net页面设计时,一旦保存页面,就在InitializeComponent方法中自动添加一条语句Self.AutoPostBackControl := nil;导致BDS不能编译成功,虽删除后可以编译,但麻烦是每次修改任何页面文件,都会重新生成此语句,十分影响开发效率,delphi官方网站上也有不少人在讨论,但没有找到解决方法。
  二、解决方法:
  笔者通过查阅Dotnet FromeWork 3.5资料,AutoPostBackControl是2.5以上System.Web.UI.Page的新增对象属性,在FromeWork2.0中并没有,因此,可以在页面类中增加一个成员变量:AutoPostBackControl:System.&Object;即可解决编译,而又不对系统运行造成影响,程序如下:
  1、保存页面时,InitializeComponent;方法中自动生成了语句Self.AutoPostBackControl := nil;
  procedure TMakeJsData.InitializeComponent;
  begin
  Include(Self.Button1.Click, Self.Button1_Click);
  Self.AutoPostBackControl := nil; //自动生成的代码,导致delphi2007不能正常编译
  Include(Self.Load, Self.Page_Load);
  end;
  2、bds页面程序中,在页面的public中增加如下对象变量: AutoPostBackControl:System.&Object;
  可以使使编译通过并且运行时不会有问题,因为bds2007本不就不用AutoPostBackControl属性。
  type
  TMakeJsData = class(System.Web.UI.Page)
  {$REGION 'Designer Managed Code'}
  strict private
  procedure InitializeComponent;
  procedure Button1_Click(sender: System.Object; e: System.EventArgs);
  {$ENDREGION}
  strict private
  procedure Page_Load(sender: System.Object; e: System.EventArgs);
  strict protected
  Button1: System.Web.UI.WebControls.Button;
  Label1: System.Web.UI.WebControls.Label;
  protected
  procedure OnInit(e: EventArgs); override;
  private
  { Private Declarations }
  public
  { Public Declarations }
  AutoPostBackControl:System.&Object; //增加此成员变量
  end;
  编译顺利通过,发布到装了FromeWork 2.0、FromeWork 3.5的服务器上测试,程序运行正确。

  2009年9月全国计算机等级考试时间及科目预告

  2009年NCRE考试有新变化

  2009年全国计算机等级考试大纲

  全国计算机等级考试历年真题及答案

  2009年上半年全国计算机等级考试试题及答案

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答