zoukankan      html  css  js  c++  java
  • 在设计时通过反射改变属性的特性

       1: public class A

       2:      {
       3:          public string Name { get; set; }
       4:   
       5:          public string Age { get; set; }
       6:   
       7:          public bool IsOk { get; set; }
       8:   
       9:          [Browsable(false)]
      10:          public bool Visiable { get; set; }
      11:      }
      12:   
      13:  private void button1_Click(object sender, EventArgs e)
      14:          {
      15:              A a = new A();
      16:              Type type = typeof(BrowsableAttribute);
      17:   
      18:              PropertyDescriptorCollection props = TypeDescriptor.GetProperties(a);
      19:              AttributeCollection attrs = props["Visiable"].Attributes;
      20:   
      21:              FieldInfo fld = type.GetField("browsable", BindingFlags.Instance | BindingFlags.NonPublic);
      22:              fld.SetValue(attrs[type], true);
      23:   
      24:              this.propertyGrid1.SelectedObject = a;
      25:          }

  • 相关阅读:
    Centos7安装docker
    Centos 7快速安装之packstack
    mysql基础知识复习
    Linux系统部署samba服务记录
    简单python程序练习
    Docker 搭建pxc集群 + haproxy + keepalived 高可用(二)
    Docker 搭建pxc集群 + haproxy + keepalived 高可用(一)
    linux下的find文件查找命令与grep文件内容查找命令
    db2创建nickname
    oracle 启动报ORA-01105 ORA-19808
  • 原文地址:https://www.cnblogs.com/jackping/p/2944275.html
Copyright © 2011-2022 走看看