2
不希望使用listview或datalist。但我想弄清楚如何切换我的列和行。如何切换gridview中的列和行
例如我的栏目是projectname,projectaddress等。
任何帮助,将不胜感激。
不希望使用listview或datalist。但我想弄清楚如何切换我的列和行。如何切换gridview中的列和行
例如我的栏目是projectname,projectaddress等。
任何帮助,将不胜感激。
在将数据加载到gridview之前,您可以翻转数据集。
private void BindData()
{
// Fill a dataTable with results
// Add the dataTable to a DataSet
DataSet ds = new DataSet();
ds.Tables.Add(dt);
// Flip your dataSet
DataSet new_ds = FlipDataSet(ds);
new_ds.Tables[0].Rows[0].Delete();
DataView my_DataView = new_ds.Tables[0].DefaultView;
gridView.DataSource = my_DataView;
gridView.DataBind();
}
public DataSet FlipDataSet(DataSet my_DataSet)
{
DataSet ds = new DataSet();
foreach(DataTable dt in my_DataSet.Tables)
{
DataTable table = new DataTable();
for(int i=0; i<=dt.Rows.Count; i++)
{
table.Columns.Add(Convert.ToString(i));
}
DataRow r;
for(int k=0; k<dt.Columns.Count; k++)
{
r = table.NewRow();
r[0] = dt.Columns[k].ToString();
for(int j=1; j<=dt.Rows.Count; j++)
r[j] = dt.Rows[j-1][k];
table.Rows.Add(r);
}
ds.Tables.Add(table);
}
return ds;
}
我的数据不预加载到数据集中,而是直接放到GridView控件从一个SqlDataSource见下文: – user1281748 2012-03-20 19:39:08
@ user1281748你不能因为据我所知翻转使用的SqlDataSource或GridView的设置源。您可以将SQLDataSource的结果转换为DataSet,然后执行上面的操作。如果你需要一个如何获得一个SQLDataSource到一个dataTable的例子,请检查一下。 http://stackoverflow.com/questions/1532937/asp-net-c-sharp-put-round-sqldatasource-into-square-datatable-hole – 2012-03-20 19:47:31
非常感谢您的帮助! – user1281748 2012-03-20 19:51:00