阅读内容 

.net 里面 protected private 的变量也可以访问

[日期:2005-04-10] 来源:中国站长学院  作者:郁郁小蝎 [字体: ]

通过 原数据可以访问,我是访问后,才发现自己怎么都操作私有字段了呢

参考代码

public class L3Data : System.ComponentModel.Component
?{
? private System.ComponentModel.Container components = null;
??????? private? Page _page;
? private? ArrayList LiteralList = new ArrayList();
? public L3Data(System.ComponentModel.IContainer container)
? {
?? container.Add(this);
?? InitializeComponent();
? }

? public L3Data()
? {
??
?? InitializeComponent();
? }
? protected override void Dispose( bool disposing )
? {
?? if( disposing )
?? {
??? if(components != null)
??? {
???? components.Dispose();
??? }
?? }
?? base.Dispose( disposing );
? }
??????? #region 组件设计器生成的代码
? private void InitializeComponent()
? {
?? components = new System.ComponentModel.Container();
? }
? #endregion
? #region Property
? public Page Page
? {
?? get{return this._page;}
?? set
?? {??
??? this._page = value;
??? Type type = _page.GetType();
??? type = type.BaseType;
??? System.Web.UI.WebControls.Literal literal = new Literal();
??? System.Reflection.FieldInfo[] fields = type.GetFields(BindingFlags.NonPublic|(BindingFlags.Static | BindingFlags.Instance));
??? foreach(System.Reflection.FieldInfo field in fields)
??? {
???? if(field.FieldType.Equals(literal.GetType()))
????? this.LiteralList.Add(field);
??? }
??? int count =0;
??? foreach(FieldInfo field in this.LiteralList)
??? {
???? count++;
???? object obj = field.GetValue(this.Page);
??????? literal = (Literal)obj;
???? if(literal.Text.Equals("wx"))
????? literal.Text ="I can see you";
???? else
???? {
????? literal.Text="wangxing"+count.ToString();
???? }
??? }
?? }
? }
? #endregion
?}.

阅读:
录入:

推荐 】 【 打印
相关新闻      
本文评论       全部评论
发表评论
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款


点评: 字数
姓名:
Advertisement
内容查询


Advertisement