Hailoong 2011-12-07 19:31
ddkroot
没有这个宏定义啊。
xiaxue0525 2011-08-03 16:32
不可用。鉴定完毕。
habu 2009-10-20 12:45
TimeSpan 也顺便写下吧
吴碧宇 2009-07-11 20:42
我也没有试过。你可以试试。。我个人觉得可以。
firefly_liu 2009-07-11 16:31
转载了你的文章,但是我标明了出处,希望不要介意,
但是我实在ActiveX里下载文件,下载任务一开始,IE就卡死了,这个方法可以在子线程调用吗?
wangjunfeng 2009-07-01 15:25
6楼的 “如果处于选中状态” 应该是“如果处于未选中状态"
wangjunfeng 2009-07-01 15:23
版主 不好意思 第一次回复可能我太激动了 因为我在网上搜索了很多关于这个的解释 大家都是你抄我 我抄你的 没有实质性的解释 很容易误导别人
我的email地址是wangjunfeng2009@gmail.com 希望能和大家一起交流提高
wangjunfeng 2009-07-01 15:21
RegisterRequiresPostBack是把实现了IPostBackDataHandler的控件向Page注册,Page将该控件的ID以ViewState的形式输入到页面的Hidden字段里(注意:此时就算你屏蔽了Page的ViewState,页面的SourceCode里面原有__ViewState的Hidden元素),为接下来的PostBack做准备,因此RegisterRequiresPostBack是作用于下一次的PostBack.
回到上面的CheckBox例子,当页面postback至服务器后,在ProcessPostData的过程中,我们可以看到如下代码
// process controls that explicitly registered to be notified of postback
if (_controlsRequiringPostBack != null) {
foreach (string controlID in _controlsRequiringPostBack) {
Control c = FindControl(controlID);
if (c != null) {
IPostBackDataHandler consumer = c._adapter as IPostBackDataHandler;
if(consumer == null) {
consumer = c as IPostBackDataHandler;
}
// Give a helpful error if the control is not a IPostBackDataHandler (ASURT 128532)
if (consumer == null) {
throw new HttpException(SR.GetString(SR.Postback_ctrl_not_found, controlID));
}
bool changed = consumer.LoadPostData(controlID, _requestValueCollection);
if (changed)
_changedPostDataConsumers.Add(c);
}
else {
if (fBeforeLoad) {
if (leftOverControlsRequiringPostBack == null)
leftOverControlsRequiringPostBack = new ArrayList();
leftOverControlsRequiringPostBack.Add(controlID);
}
}
}
_controlsRequiringPostBack = leftOverControlsRequiringPostBack;
}
这段代码的意思是把LoadAllState(同样可以参考System.Web.UI.Page源码)恢复出来的之前写入ViewState的控件ID恢复出来,并且对他执行LoadPostData及其后续操作(RaisePostDataChangedEvent)
进入CheckBox的源码,我们可以看到在CheckBox的LoadPostData的代码如下:
protected virtual bool LoadPostData(string postDataKey, NameValueCollection postCollection) {
bool dataChanged = false;
string post = postCollection[postDataKey];
bool isChecked = (!String.IsNullOrEmpty(post));
if (isChecked) {
ValidateEvent(postDataKey);
}
dataChanged = (isChecked != Checked);
Checked = isChecked;
return dataChanged;
}
很明显 由于unchecked状态的CheckBox是不postback回来的,所以最后的dataChanged为true(大家自己去推断这个计算过程 嘿嘿) 从而触发最后的RaisePostDataChangedEvent
wangjunfeng 2009-07-01 15:03
要解释RegisterRequiresPostBack的作用,需要知道Form的PostBack的过程,对于CheckBox,RadioButton这些控件来说,如果处于选中状态,在postback的过程中是不会作为form的元素回发给服务器端的,这样就有一个问题,对于一个checkbox,从checked到unchecked,服务器就没办法捕获到这个Changed事件了。因为从ProcessPostData这个方法(可查看System.Web.UI.Page源码)里的postNameValueCollection里面没有这个checkbox的key.所以就忽略了这个checkbox的LoadPostData,从而导致忽略了Changed事件。为了解决类似的问题,RegisterRequiresPostBack就应运而生了。
wangjunfeng 2009-07-01 14:36
你关于RegisterRequiresPostBack和RegisterRequiresRaiseEvent解释都错了 请自己去看System.Web.UI.Page的源码后再来解释 不然很误人子弟.PostBackEvent可能会触发多个吗??????这是最基础的....我看到很多网站孩转载了这篇文章 悲哀!
xmaro 2009-06-03 22:33
太牛了,有写dotnetfx的潜力。。
hbx12345 2009-04-27 02:40
监控软件 2009-03-31 11:34
能不能写一下regex_repace的使用啊
陈茂盛 2009-03-22 17:24
楼上的都是白痴!没语言,怎么可能嘛,自己动脑想一想,都是一群传销者
iSun 2009-03-11 16:41
还有,Page.RegisterRequiresPostBack()只能用在实现了IPostBackDataHandler接口的控件,而博主举的例子中是给Button控件注册,显然,Button是没有实现该接口的。不知博主是如何测试的?
iSun 2009-03-11 16:27
lz,关于Page.RegisterRequiresRaiseEvent(),我做了测试。正如你描述的例子,Button3被该方法注册,但当我点击Button1后,只执行Button3的Click事件,而跳过了Button1本身的Click事件!
吴碧宇 2009-02-19 15:25
--引用--------------------------------------------------
菜鸟111: 请问,这样编译出来的boost库是静态库还是动态库,在发布exe文件的时候,需要一起发布boost库?谢谢,我水平很差
-------------------------------------------------------
bjam --toolset=msvc-9.0 --prefix=F:\Develop\BoostLibAndDll --build-type=complete install
使用上面的编译命令,编译所有文件。
湖北清巴 2009-01-15 20:46
@路人ABC
这杀毒软件好啊,我用3个月了,在电脑上做什么都没影响,电脑速度快,没出现任何安全隐患。
使用美杜杉让你的电脑快起来
代理美杜杉让你的收入高起来
如果觉得电脑卡 那就快用美杜杉
您对弹窗烦了吧 还是选择美杜杉
美杜杉1号----军方认证的行为杀毒软件
免费索取序列号平台:免费试用,0加盟代理
http://Sell200.medusa1375.cn
路人ABC 2008-12-30 21:38
楼上高手啊!经你这么一说,觉得这个软件确实不是“山寨货”!值得用用的。而且对软件如何进行杀毒的也说明了,学习中。。。。。
西藏蛮牛 2008-12-30 21:11
一、 判定medusa 是否在工作:
判定medusa 是否在工作,主要方法有一下几种:
1.启动系统,任务栏右边显示黄色或绿色杀毒软件图标,表明正在工作。
2.双击任务栏上的杀毒软件图标,打开杀毒软件主界面,看到安全保护状态下的六个柱体是动态变化的,表明正在工作。
3.打开任务管理器,看到五个进程:MedusaNo1.exe,MedusaEndp.exe, MedusaReg.exe, MedusaProc.exe, MedusaFile.exe。表明正在工作。
二、进程关系:
Windows 系统用户包含:system , administrator , network service , 最高权限用户是:system , (很多人误会最高权限用户是:administrator),系统用户都可以创建进程,administrator创建的进程是用户进程,另外两个用户创建的进程是系统进程。我们打开word 文档,任务管理器中就可以看到:winword.exe 进程,就是由 administrator 创建的。
Medusa 运行加载一个用户(administrator)进程:MedusaNo1.exe,四个系统(system)进程:MedusaEndp.exe, MedusaReg.exe, MedusaProc.exe, MedusaFile.exe。
我们运行任何一种软件,都会加载至少一个进程,如果是用户进程,medusa 就会放行,如果是系统进程,medusa 如果无法识别,就会阻止该进程。如果进程访问windows 内核(如其它的杀毒软件扫描系统内核),medusa 就会删除该进程。当然,如果用其它杀毒软件扫锚,也会杀掉medusa 的四个系统进程。
你的图片(详细事件)是你安装瑞星出现的情况,安装以后瑞星的设置是随着系统启动,medusa 肯定会阻止瑞星进程扫面系统内核,删除该进程。当然,你的瑞星就无法运行了。同样,如果你关闭medusa ,可以安装瑞星,你用瑞星扫描,瑞星同样会删除 endp(medusa 安装文件夹)中的可执行文件。
我们安装其它软件,如果没有经过签名,还是可以使用的。但是如果该软件加载系统启动项(就是随着系统启动)medusa 会删除启动项。我安装抓图精灵,设置随系统启动,medusa 就删除启动项,但是软件还是正常运行的,但是就是不能随系统启动。
以上就是我的浅见,有什么不妥的地方,请斧正!
中国定西 2008-12-30 17:49
如果你对电脑不太懂的话,建议安装《美杜杉一号》防病毒软件(为什么?使用简单、智能不占资源,安装后就不用管多方便啊!
。 2008-12-29 14:18
这个杀毒软件很不错,我在用
吴碧宇 2008-12-29 13:33
有道理的,系统目录下的文件如果没有签名,很有可能是非法可是病毒之类的。。。
菜鸟111 2008-12-28 23:19
请问,这样编译出来的boost库是静态库还是动态库,在发布exe文件的时候,需要一起发布boost库?谢谢,我水平很差
aspnetx 2008-12-28 11:06
没有签名就删除?现在好多程序都是啊,要这么整机器得很快崩溃掉吧?
在我看来 2008-12-28 08:24
搬个板凳,静观。
吴碧宇 2008-12-25 15:02
写得不清楚吗?
mr liao 2008-12-10 00:25
太高深了
这个 看得我好晕 啊, 没有个例子。
mr liao 2008-12-09 23:44
IIS 如何配置啊
mr liao 2008-12-09 23:40
<system.web>
<httpModules>
<add type="RewriteLink.LinkWriter,RewriteLink" name="RewriteLink" />
</httpModules>
<system.web>
这个是这样?
mr liao 2008-12-09 23:20
我的理解 这不是控件, 最多是个简单的组件
mr liao 2008-12-09 21:29
小心 用啊, 如果 你这个page 存在 有一个这样 回退的按钮,这个那就不好了。 我想找的是 禁用浏览器自身后退功能。
mr liao 2008-12-09 21:13
这个javascript好强
mr liao 2008-12-09 21:09
有意思
吴碧宇 2008-12-04 21:25
@发发萨
不用
张青阳 2008-11-19 19:01
非常感谢...
高手!!!
发发萨 2008-10-19 22:15
不用调用么? 我是个新手 不太清楚
clefoo 2008-09-27 00:12
请LZ告诉我啊
clefoo 2008-09-27 00:11
你的一个应用HttpModule实现权限系统在哪里啊
ahcen001 2008-07-31 14:52
请问在智能设备上可以这么写吗?
能加我的msn讨论吗? ahcen001@hotmail.com
丹丹 2008-07-18 08:38
呵呵,写的很好。对我很有帮助。
fjtonychen 2008-03-18 22:35
用了你的代码很像不能用的返回错误信息有几种:
1、远程错误500。。。
2、登陆超时。。。。
请博主赐教,谢谢!(可以通过E_MAIL交流)
zn 2008-03-10 16:27
谢谢
我今天用mysheet.Cells[row,col],想获取单元格数据。一直不能成功。看到这篇文章才解决问题。mysheet.Cells[row,col]返回的是单元格对象,而不是所对应的数据。
zn 2008-03-10 16:18
谢谢。
我今天用mysheet.Cells[row,col],想获取单元格数据。一直不能成功。看到这篇文章才解决问题。mysheet.Cells[row,col]返回的是单元格对象,而不是所对应的数据。
qqhe325 2007-07-25 17:05
学习,好像一般用不上吧,要验证码
qqhe325 2007-07-25 16:52
40 finally
41 {
42 cmd.Connection.Close();//有错
43 }
吴碧宇 2007-07-06 08:43
不好意思。。我才在这里开博客。。不知道 。。。。
dudu 2007-07-06 07:55
博客园首页从来不允许转载文章!
nonocast 2007-07-06 01:20
不好意思,看错了
看成namespace的名字,哈哈