public class SqlDataSource : DataSourceControl
{
......
}public abstract class DataSourceControl : Control, IDataSource, IListSource
{ .........
[DefaultValue(false)]
[EditorBrowsable(EditorBrowsableState.Never)]
[Browsable(false)]
public override bool Visible { get; set; }
.........
}
从上面的简略代码可以看出, System.Web.UI.WebControls.SqlDataSource是继承于DataSourceControl ,
而且DataSourceControl 是有一个public的Visible 属性, 那么为什么System.Web.UI.WebControls.SqlDataSource的实例没有Visible这个属性呢? 谢谢。
[Browsable(false)]看这两个attribute,DataSource控件本身就没界面不需要显示
你的意思是说:
[EditorBrowsable(EditorBrowsableState.Never)]
[Browsable(false)]
控制了Visible属性的可不可用?据我验证, 自己写的一个类MyClass, 里面的一个属性MyName加上:
[EditorBrowsable(EditorBrowsableState.Never)]
[Browsable(false)]但是MyClass myclass = new MyClass();
myclass.MyName 仍然是可以访问的。
datasource也是一个control, 所有control都会有Visible属性, 只是我不知道DataSource是怎么控制Visible属性不能被访问的, 望大家多多指教。 谢谢。
有些属性对这些控件是没用的。