当前位置:编程学习 > C#/ASP.NET >>

看看这段代码,大家帮帮我

FieldsObject = new MIS_FlowWorkFieldsObject();

            //根据界面checkbox对应列,设置fieldsobject对应的值
            foreach (Control c in panSelect.Controls)
            {
                if (c is myCheckBox)
                {
                    myCheckBox chkItem = c as CheckBox;
                    string objName = chkItem.Name.Substring(3).Trim().ToString();
                    if (chkItem.Checked)
                    {
                        FieldsObject["objName"] = true;
                    }
                    else
                    {
                        FieldsObject["objName"] = false;
                    }
                }
            }

其中FieldsObject是对象,objName 一个字符串
我想让他们成为“对象.属性”如何做啊? --------------------编程问答-------------------- 不知道 --------------------编程问答-------------------- FieldsObject类

publci class FieldsObject
{
  private string objName;
//加上这个属性就可以了。
  public string ObjName
  { 
     get{return this.objName;}
     set{this.objName=value;}
  }
}
--------------------编程问答-------------------- 在创建对像时,在对像内部定义属性 --------------------编程问答-------------------- 只知道
public class myClass
{
 
   private string _myName;
   public string MyName
{
   get{ return _myName;}
   set{_myNmae = value;}
}
}
 private void static main
{
   myClass a=new myClass();
   a.MyName="";
}

能这样取。 --------------------编程问答-------------------- 什么呀?是想用反射动态创建类实例么? --------------------编程问答-------------------- 按2楼的做 --------------------编程问答-------------------- 没弄白楼主啥意思!
要是想让他们成为“对象.属性”
就写个类
在类里定义个私有的变量
然后读写属性就可以了
publci class ClassOne 
{
  private string _name;
//加上这个属性就可以了。
  public string Name
  { 
     get{return this._name;}
     set{this._name=value;}
  }
}

--------------------编程问答-------------------- good --------------------编程问答-------------------- //根据界面checkbox对应列,设置fieldsobject对应的值 
没明白这是干啥的,学习了 --------------------编程问答-------------------- 写成实体类

public class MIS_FlowWorkFieldsObject
{
    private string ObjName
    public string ObjName
      { 
         get
          {
             return objName;
          }
         set
          {
             objName=value;
          }
  }

}
--------------------编程问答-------------------- 先定义一个私有这是,然后给这个变量加上get&set方法即可

 public class Test
 {
   private string objectName;
   public string ObjectName
   {
      get{return this.objectName;};
      set{this.objectName = value;};
   }
 }
--------------------编程问答-------------------- 有些问题啊 ,这样是属性访问
但是现在有些问题

如何写啊?

string objName = chkItem.Name.Substring(3).Trim().ToString(); 

                    if (chkItem.Checked) 
                    { 
                        FieldsObject["objName"] = true; 
                    } 
                    else 
                    { 
                        FieldsObject["objName"] = false; 
                    } 
关键是属性是动态的怎么处理啊?
example:  obj.xxx = "";
xxx是动态的啊 --------------------编程问答-------------------- 使用get和set就行了楼上的办法就行 --------------------编程问答-------------------- 不行的啊
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Custom objCustom = new Custom();

            string _Name = "Name";
            objCustom[_Name] = "Tom";
            Console.WriteLine(objCustom.Name);
            Console.ReadLine();
        }
    }
}

写了个简单的,报错啊 --------------------编程问答-------------------- 建议lz看看属性、索引器、键值对相关介绍文章 --------------------编程问答-------------------- FieldsObject这个类是你写的吗,可以修改吗
你把属性和索引器的概念搞反了
没有搞清楚啊,你好好的看看书吧
这个写法才是属性,
public class MIS_FlowWorkFieldsObject
{
    private string ObjName
    public string ObjName
      { 
         get
          {
             return objName;
          }
         set
          {
             objName=value;
          }
  }


}

--------------------编程问答-------------------- private string objName;

  public string ObjName
  { 
     get{return objName;}
     set{objName=value;}
  }
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,