遇到个问题,找了半天答案也没找到,请教高手,这个问题到底怎么解决啊? 谢谢。代码不多,我就都贴上来了啊!using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;namespace WindowsApplication1
{
    public partial class DataView : Form
    {
        public DataView()
        {
            InitializeComponent();
        }        private void DataView_Load(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();
            dt.Columns.Add(new DataColumn("班级",typeof(string)));
            dt.Columns.Add(new DataColumn("姓名",typeof(string)));
            dt.Columns.Add(new DataColumn("学科",typeof(string)));
            dt.Columns.Add(new DataColumn("成绩",typeof(int)));            DataRow dr = dt.NewRow();
            dr["班级"] = "一班";
            dr["姓名"] = "赵伟";
            dr["学科"] = "语文";
            dr["成绩"] = 90;            dt.Rows.Add(dr);
            DataRow dr1 = dt.NewRow();
            dr1["班级"] = "一班";
            dr1["姓名"] = "叶君丽";
            dr1["学科"] = "数学";
            dr1["成绩"] = 99;
            dt.Rows.Add(dr1);            DataView dv = new DataView(dt);  
            foreach (DataRowView drv in dv)
            {
                for (int i = 0; i < dt.Columns.Count; i++)
                {
                    richTextBox1.Text += drv[i].ToString();
                }
            }
        }
    }
}

解决方案 »

  1.   

    。。补充:出问题的是在
    DataView dv = new DataView(dt);  
    foreach (DataRowView drv in dv)
    这两行,提示
    “DataView”方法没有采用“1”个参数的重载
    “WindowsApplication1.DataView”不包含“GetEnumerator”的公共定义,因此 foreach 语句不能作用于“WindowsApplication1.DataView”类型的变量
      

  2.   

    不包含“GetEnumerator”的公共定义,因此 foreach
    改用for()循环实现吧.
      

  3.   


    DataView dv = new DataView();
    本来提示是没有参数的,可是网上很多方法都是这样写的,DataView dv = new DataView(DataTable);
    但是我这里这样用就出错。可以参考:http://hi.baidu.com/libanggeng/blog/item/bc53563e29c97a12baa167a4.html
      

  4.   

    System.Data.DataView dv = new System.Data.DataView(dt);
      

  5.   

     DataTable dt = new DataTable();——这样写试试
     DataTable dt = new DataTable("dt")
      

  6.   

    LZ自定义的这个类与DataView同名,所以这里 DataView dv = new DataView(dt); 应改为 System.Data.DataView dv = new System.Data.DataView(dt);
      

  7.   

    你的程序,我一点儿没改,运行也没毛病啊,你重新引用一遍你的System.Data.dll