以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关于项目中动态加载代码的写法 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=117043) |
-- 作者:ap9709130 -- 发布时间:2018/4/4 16:40:00 -- 关于项目中动态加载代码的写法 老师 我现在在做一个项目,基本的代码都是动态加载的.现在试了一下速度都可以达到要求. 但是在一些事件动态加载时,e 参数的写法不会,请问一下,要怎么写? 像HttpRequest事件的,在移动帮助里有是这样写:Dim e As RequestEventArgs = args(0) 如果是项目事件中,NetworkAvailabilityChanged 中要引用e参数,要怎么写? .... 窗口事件中 如果要引用 enter 事件中,e 参数要怎么写? .... 还在表事件上中的DataColChanged 和 DoubleClick 要怎么写? ...
|
-- 作者:有点甜 -- 发布时间:2018/4/4 16:44:00 -- 如果要问的是代码怎么写,这样写
Dim e As object = args(0) |
-- 作者:ap9709130 -- 发布时间:2018/4/4 22:50:00 -- 老师 我试了一下,好像会有错误.我的代码如下: Dim e As object = args(0) //直接写到项目中不用这个 If e.IsAvailable = True Then If Connections.TryConnect("Provider=SQLOLEDB.1;Password=@******#;Persist Security Info=True;User ID=sa;Initial Catalog=aaa;Data Source=1XX.XX.XX.XX") = True Then Vars("wlpd") = True MessageBox.show(0) Else Vars("wlpd") = False MessageBox.show(1) End If Else Vars("wlpd") = False MessageBox.show(2) End If 代码如果直接定在项目的NetworkAvailabilityChanged 事件中是没有问题的. 但是如果我把代码动态的加入到函数中 在第一句代码中:Dim e As object = args(0) 加入这个 然后用:Functions.Add("test",Code) Functions.Complie()可以加入进去不会报错 但是在NetworkAvailabilityChanged 事件中写入: Functions.Execute("test") 当触发事件时,就会报错:错误如下: .NET Framework 版本:2.0.50727.8825 Foxtable 版本:2018.3.3.1 错误所在事件:自定义函数test 详细错误信息: 调用的目标发生了异常。 索引超出了数组界限 是什么原因?
|
-- 作者:有点甜 -- 发布时间:2018/4/4 22:58:00 -- 改成
Functions.Execute("test", e) |