求VS 2005的Windows应用程序中 可以支持绑定DataReader的控件列表
求VS   2005的Windows应用程序中   可以支持绑定DataReader的控件列表
------解决方案--------------------DataGridView ? 
     无法直接绑定 DataReader, 需要通过 BindingSource 作为中介   
 string connStr =  "server=.;database=Northwind;uid=sa "; 
             string sql =  "SELECT * FROM Products "; 
             SqlConnection conn = new SqlConnection(connStr); 
             SqlCommand cmd = conn.CreateCommand(); 
             cmd.CommandText = sql; 
             using (conn) { 
                 conn.Open(); 
                 // requries BindingSource as a bridge to bind DataReader to DataGridView 
                 BindingSource bindingSource = new BindingSource(); 
                 bindingSource.DataSource = cmd.ExecuteReader(); 
                 dataGridView1.DataSource = bindingSource; 
             }     
 事实上, net 中对  
 DataGridView.DataSource 可接受的数据源作出明确规定,需要实现 
 IList 接口,包括一维数组。 
 IListSource 接口,例如,DataTable 和 DataSet 类。 
 IBindingList 接口,例如,BindingList 类。 
 IBindingListView 接口,例如,BindingSource 类。 
 中的任意一个,   
 而 DataReader 没有实现上述任意接口(实现 IEnumerable 接口)