C#动态使用属性名

对象Instance中有许多变量,在我的程序中有这么一句stringparamName=textBox.text;来获取要使用的变量名,然后用Instance对象调用如I... 对象Instance中有许多变量,
在我的程序中有这么一句string paramName=textBox.text;来获取要使用的变量名,
然后用Instance对象调用 如Instance.paramName的形式
应该怎么样实现呢
展开
 我来答
百度网友16ad9e1
推荐于2016-06-05 · TA获得超过774个赞
知道小有建树答主
回答量:477
采纳率:0%
帮助的人:506万
展开全部

动态调用用反射,写个例子你看看

  public class Instance
    {
        public string Name { get; set; }
        public string Action { get; set; }
        
    }
    class Program
    {
        static void Main(string[] args)
        {
            var ins = new Instance();
            ins.Name = "act";
            ins.Action = "test";

            var t = ins.GetType().GetProperty("Name");//这里使用反射得到Name这个属性
            var result=t.GetValue(ins, null);//然后再得到它的值
            Console.WriteLine(result);
            

            Console.Read();    
            
        }
    }
syht2000
高粉答主

2013-07-17 · 关注我不会让你失望
知道大有可为答主
回答量:3万
采纳率:79%
帮助的人:1.4亿
展开全部
这个实际上就是反射了,百度一下资料很多,也有优化方案,比如这个http://www.cnblogs.com/nankezhishi/archive/2012/02/11/dynamicaccess.html
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
猪熊打架
2013-07-17 · TA获得超过160个赞
知道小有建树答主
回答量:296
采纳率:0%
帮助的人:201万
展开全部
你得先有类哦,比如
class User{
public string Name{get;set}
public string Age{get;set}
}
然后实例化该类,如
User user=new User();
然后你就可以使用
user.Name=xxx;
user.Age=xxxx;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
清水栞
2013-07-17 · TA获得超过1547个赞
知道小有建树答主
回答量:1538
采纳率:50%
帮助的人:981万
展开全部
没懂 凑字凑字凑字
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式