1、如果在Windows From程序下,可以这样实行:foreach(Control control in this.Controls)
2、如果是ASP中,可以这样设置,以TextBox1为例:protected void Page_Load(object sender, EventArgs e)
//遍历表单foreach(Controlcolinthis.Controls){if(colisTextBox){//文本框((TextBox)col).ReadOnly=true}if(colisComboBox){//下拉框((ComboBox)col).Enabled=true}if(colisCheckBox){//复选框((CheckBox)col).Enabled=false}if(colisRadioButton){//单选框((RadioButton)col).Enabled=false}if(colisButton){//按钮((Button)col).Enabled=false}}
在设计网页时,有时需要将输入框设置为只读状态,即其中的内容不可编辑,实现这种设计的方法有两种:使用input的disable和readonly两个属性。
先来看下二者的区别:
<input
type=
"text
"
readonly=
"true
"
value=
"这是readonly的!
">
<input
type=
"text
"
disabled=
"true
"
value=
"这是disabled的!
">
可以看到,虽然两种都是让input的内容不能被用户编辑,但是对于后期的美工处理就有问题了!
例如:
<style>
input
{
color:blue
}
</style>
只有readonly的那个文本是蓝色的!
disabled是按系统设置的disabled颜色来设置前景色的,css对其无效!
另外,readonly和disabled还有一个不同点就是,当input属性为readonly时,提交表单是可以获得input的内容。
如果是disabled则不能获得所提交的内容,返回值全部为null,所以此处需要注意。
慎用readonly和disabled,指定了disabled的表单,在submit时,不会把它的值传出去。
例如,有两个text,一个是readonly一个是disabled,submit后,只能发送那个不是disabled的。
注意地址栏的值.
要保存到本地,因为submit了,不然,看不到效果。
OC中此处的readonly和你所想的还是有区别的,当你在@property中用readonly时只是表示编译器会帮你自动生成getter方法,同时不会自动帮你生成setter方法。既然编译器不给你setter你又不自己去定义setter方法。那你当然无法赋值。----说了这么多回头看还是没解决你的问题,下面才是真格的:你可以通过方法来赋值;代码如下:#import
<Foundation/Foundation.h>
@interface
BaseClass
:
NSObject
{
}
@property
(nonatomic,
copy,readonly)
NSString
*name
-
(void)setName:(NSString
*)name
@end
---------
#import
"BaseClass.h"
@implementation
BaseClass
@synthesize
name=_name
-
(void)setName:(NSString
*)name
{
if
(_name
!=
name)
{
[_name
release]
_name
=
[name
copy]
}
}
@end
主函数调用:
BaseClass
*base
=
[[BaseClass
alloc]
init]
[base
setName:@"Sheldon"]//通过方法给readonly属性赋值;
NSLog(@"base
class's
name
=
%@",
base.name)
-------
运行结果:
2014-08-20
16:07:21.562
Hello[5062:303]
base
class's
name
=
Sheldon
更多了解欢迎访问:http://blog.csdn.net/wuming22222/article/details/38706605
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)