ArrayList使用Add来添加数据,但是用什么方法来接收数据呢?
比如:
 public class Dy_Listbxshow //创建类  
{  
public Dy_Listbxshow()  
{    
}  
public void dy_show()  
{  
DataAccess DA = new DataAccess();  
SqlConnection Conn = DA.getConn();        //定义一个类来实现连接数据库   
diary a= new diary();  
string sql="select 标题 from ta_diary";  
SqlCommand myCommand = new SqlCommand(sql,Conn);  
//最初的目的是要把检索到的ta_diary表中的“标题”列中的数据显示在窗体控件“dy_listlbox”列表框中,但是没能成功(类中无法实现窗体控件)!查资料说用ArrayList类可以实现,但是没能看懂如何使用“Add”和如何在类外面接收相应的数据?
try  
{  
SqlDataReader myReader = myCommand.ExecuteReader();  
while (myReader.Read())   
a.dy_listlbx.Items.Add(myReader.GetString(0));  
}  
finally   
{  
Conn.Close();             //释放资源  
}  }  }  
题目比较长,小弟第一次来到贵处,希望各位朋友帮忙解答下,最好是能帮忙实现下小弟要的功能!

解决方案 »

  1.   

    using System.Collections;
    ArrayList arr=new ArrayList()
    arr.add();不就可以了?
    然后在窗体上绑定这个arr就可以了。如果是.net2.0的话直接用泛型得了,2.0下不建议使用ArrayList这样的集合函数
      

  2.   

    public void dy_show()  改称public ArrayList dy_show(){return 一个arraylist}
    到时候用ArrayList getArr=类.dy_show()不就可以了?
      

  3.   

    类的代码为:
    namespace PersonalOS
    {
    /// <summary>
    /// Dy_Listbxshow 的摘要说明。
    /// </summary>
    public class Dy_Listbxshow
    {
    public Dy_Listbxshow()
    {
    //
    // TODO: 在此处添加构造函数逻辑
    //
    }
    public ArrayList dy_show()
    {
    DataAccess DA = new DataAccess();
    SqlConnection Conn = DA.getConn();        //连接数据库
     //把“日记”界面上的相应控件与数据库绑定
    diary a= new diary();
    ArrayList arr=new ArrayList();
    string sql="select 标题 from ta_diary";
    SqlCommand myCommand = new SqlCommand(sql,Conn);

    try
    {
    SqlDataReader myReader = myCommand.ExecuteReader();
    while (myReader.Read())       
        arr.Add(myReader.GetString(0));
    return arr;
    }
    finally 
    {
    Conn.Close();             //释放资源
    }

    } }
    }
    接收的代码为:“ArrayList getArr=Dy_Listbxshow.”但是点了之后就是没出现“dy_show()”方法,只有“Equlas”和“ReferenceEquals”?为什么这样呢?
    刚开始学C#问的问题可能太幼稚请多包涵!
      

  4.   

    Dy_Listbxshow dy=new Dy_Listbxshow();
    ArrayList getArr=dy.dy_show();你如过定义为public static ArrayList dy_show(){}的话才可以Dy_Listbxshow.dy_show();来调用。
    建议看看C#基础
      

  5.   

    恩,刚刚是我忘了类要实例化,可是改过来后,getArr接收到的却是
    “using System.Collections”类型!而我想要的是返回表“dy_table”中标题列中的数据!但是就是不知道怎么接收?或着说循环语句要怎么写!
      

  6.   

    唉。我写了个控制台的给你看一下。只使用ArrayList,你看一下吧。
    using System;
    using System.Collections;public class MyClass
    {
    public static void Main()
    {
    ArrayList a=getf();
    for(int i=0;i<a.Count;i++)
    {
    Console.WriteLine(a[i]);
    }
    RL();
    }
    public static ArrayList getf()
    {
    ArrayList arr=new ArrayList();
    arr.Add("t");
    arr.Add("i");
    return arr;
    }
    #region Helper methods private static void WL(object text, params object[] args)
    {
    Console.WriteLine(text.ToString(), args);
    }

    private static void RL()
    {
    Console.ReadLine();
    }

    private static void Break() 
    {
    System.Diagnostics.Debugger.Break();
    } #endregion
    }
      

  7.   

    真的太感谢了,我一直找的就是要这些!HOHO