如下代码:string a1,a2,a3,a4,a5;
a1="12";
a2="14";
a3="15";
a4="";
a5="22";
string strList="a1,a2,a3,a4,a5";
strListArr = strSqlList.Split(',');foreach (string colName in strListArr)
{
  if(colName != "")
  {
       …………
   }
}我想把colName 当作我前面定义的变量进行操作,应该用什么方法进行转化?
if(colName != "") 这样写肯定错误吧。

解决方案 »

  1.   

    换个思路;
    string[] a=new string[5];
    a[0]="12"; 
    a[1]="14"; 
    a[2]="15"; 
    a[3]=""; 
    a[4]="22"; 
    foreach (string colName in a) 

      if(colName != "") 
      { 
          ......… 
      } 

      

  2.   

    好像啊,自己一个例子,加载下拉控件值,使用数组:
            string[] XH = { "选择", "01-06", "07-12", "13-18", "19-24", "25-30", "31-36芯", "37-42", "43-48", "49-54", "55-60", "61-66", "67-72" };
    for (int ii = 1; ii <= 12; ii++)
            {
                if (RL == 2 && DDList != null && Img != null)
                {
                    if (ii == 2 || ii == 5)
                    {
                        DDList.Visible = true; Img.Visible = true; DDList.Items.Clear();
                        for (int JiaXuHao = 0; JiaXuHao <= RL; JiaXuHao++)
                        { DDList.Items.Add(XH[JiaXuHao]); }
                    }
                }
    }
    当然,也可以把数组当作变量来进行相应处理,道理一样的,供参考。
      

  3.   

    根据类型的复杂程度,需要用到反射,或接口,下面是反射的例子,
    使用反射生成一个窗体的例子:
    Assembly assm = Assembly.LoadFrom("e:\\WindowsApplication.dll");
    Type TypeToLoad= assm.GetType("WindowsApplication.Form1");

    object obj;
    obj = Activator.CreateInstance(TypeToLoad);
    Form formToShow = null;
    formToShow = (Form)obj;
    formToShow.Show();
      

  4.   

    如果对效率不高的话使用 动态程序集吧具体文章见我原创的:(可能要注册才能看到图)
    http://bbs.blueidea.com/thread-2836422-1-1.html
      

  5.   

    突然想到,这个问题可以用Javascript来解决,很简单,看下面的代码,已经通过测试:
    <script language='javascript'>//var a1;var a2;var a3; var a4;var a5; 
    var obj=new Object();
    obj.a1="12"; 
    obj.a2="14"; 
    obj.a3="15"; 
    obj.a4=""; 
    obj.a5="22"; 
    var strList="a1,a2,a3,a4,a5"; 
    var strListArr = strList.split(","); 
    var colName="";
    for (index in strListArr) 

      colName=strListArr[index ];
      if(colName != "") 
      { 
         // alert(colName );
         alert(obj[colName]);
      } 
    } </script>javascript可以把属性变量当作类的字符串属性索引。
    或者,通过eval函数也可以。
    var a1="11";
    alert(eval("a1"))