当前位置:  开发笔记 > 后端 > 正文

禁用.NET控件是否会阻止它回发

如何解决《禁用.NET控件是否会阻止它回发》经验,为你挑选了1个好方法。

我有一个定制的ASP控件,它基于一个选择(下拉菜单).如果我通过在其html中添加单词"disabled"来禁用我的控件,我在处理表单数据时会开始获取空指针错误.

我想,要么浏览器不回发禁用的表单项,要么ASP.NET在处理表单数据时忽略它们.我不确定它是哪一个.我想知道我在哪里丢失数据.

谢谢你的帮助.

PS.我意识到有更好的方法来创建和禁用控件而不是手动编辑html,但这里有一个上下文,不允许我这样做.



1> Canavar..:

是设置控件的Enable = false是为了防止控件的值被添加到已发布的数据集合中.

你可以使用readonly属性.

在MSDN中,它说:

将ReadOnly属性设置为true的TextBox控件的Text值在发生回发时发送到服务器,但服务器不对只读文本框进行处理.这可以防止恶意用户更改只读的Text值.除非由服务器端代码修改,否则Text属性的值将保留在回发之间的视图状态中.

此处还有Microsoft对与主题相关的错误报告的回复.

但如果你以经典的方式使用它会起作用:

txt2.Attributes.Add("readonly", "readonly");

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有