楼上的大哥 用的着那么麻烦吗?
既然返回的是row类型的那就加到表里好了:
把dt31 = dt30.Select("发票号= '"+a+"'"); 改成
dt31.Rows.Add( dt30.Select("发票号= '"+a+"'"));
DataTable的Select()方法返回的是一个DataRow的数组,
在你的代码中 dt31 = dt30.Select("发票号= '"+a+"'");显然dt31是Datatable类型,赋值号后面是DataRow数组。
分析楼主的意思,可能是想要dt30中的发票号为 a的数据,组成一个新的Datatable作为Gridview的数据源吧?
要是的话可以用下面的代码:
string a;
a =dt30.Rows[0][1].ToString();
DataView dataView = dt30.DefaultView;//定义一个DataView为dt30的默认视图
dataView.RowFilter = "发票号 = '"+a+"'"; //对dataView进行筛选
this.dataGridView5.DataSource = dataView;//筛选后的dataView做数据源
chufuya:返回的是数组,数组的元素是DataRow。你的这句代码“dt31.Rows.Add( dt30.Select("发票号= '"+a+"'"));”应该是不会通过编译的吧?参数不对。
dt31 = dt30.Select("发票号= '"+a+"'");