用字符串的方式获取变量名

this.GetType().GetField("testString").GetValue(this)

 

转自http://www.cnblogs.com/yinxiangpei/articles/2623597.html

 

例子一、将字符串转为变量名

复制代码
        string str = "spp";
        public string spp = "very good";
        private void button1_Click(object sender, EventArgs e)
        {           
            MessageBox.Show(this.GetType().GetField(str).GetValue(this).ToString());
        }
复制代码

例子二、通过字符串给变量赋值

 

复制代码
  public string gisoracle = "ok";

        private void button2_Click(object sender, EventArgs e)
        {

            //通过字符串获得变量值
            MessageBox.Show(this.GetType().GetField("gisoracle").GetValue(this).ToString());
            //通过给变量赋值
            this.GetType().GetField("gisoracle").SetValue(this, "gisoracle@126.com");
            //新的值
            MessageBox.Show(this.GetType().GetField("gisoracle").GetValue(this).ToString());
        }
复制代码
posted @ 2017-05-31 07:25  vsDog  阅读(1745)  评论(0编辑  收藏  举报