GridView可不可以分几行几列显示 GridView可不可以分几行几列显示如:图片1 图片2 图片3图片4 图片5 图片6 1 2 3 4 5 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以,但比较麻烦,需要把DataTable里面的行列转换一下。 /// <summary> /// 将原DataTable转换成横向显示多项 /// </summary> /// <param name="dt">原DataTable</param> /// <param name="iSize">欲转换成的列数</param> /// <param name="iColumnID">列ID</param> /// <returns></returns> private DataTable MakeData(DataTable dt, int iSize, int iColumnID) { int iTmp = dt.Rows.Count%iSize; int iRow; if (iTmp == 0) iRow = dt.Rows.Count/iSize; else iRow = dt.Rows.Count/iSize + 1; DataTable newDt = new DataTable(); for (int i = 0; i < 2*iSize; i ++) { DataColumn dc = new DataColumn(dt.Columns[iColumnID].ColumnName+i, dt.Columns[iColumnID].DataType); newDt.Columns.Add(dc); } for (int i = 0; i < iRow; i ++) { DataRow dr = newDt.NewRow(); for (int j = 0; j < 2*iSize; j ++) { if ((j/2 + i*iSize) < dt.Rows.Count) { if (j%2 == 0) dr[dt.Columns[iColumnID].ColumnName + j] = dt.Rows[j/2 + i*iSize][iColumnID]; else dr[dt.Columns[iColumnID].ColumnName + j] = dt.Rows[j/2 + i*iSize][iColumnID+1]; } } newDt.Rows.Add(dr); } return newDt; } 設計好datatable 就可以了 C# 如何把另一个进程里hiden掉的窗口show出来 c#.net生成PDF 虚心请教 怎样取DropDrowlist中没有被点击过的值? 寻Visual C#教程 再问“如何得到硬盘物理序列号” 我想上传200M,500M的大文件,httpRuntime maxRequestLength 怎么设置? ******C#版第一问****** 一个弱智的问题:SQLServer的触发器中能定义游标吗? post数据图片上传到指定的url下,老是报500的错 select * form EX_NewArticle where Title='甜美黑色针织上衣' 为什么有错? 显示小数问题
/// <summary>
/// 将原DataTable转换成横向显示多项
/// </summary>
/// <param name="dt">原DataTable</param>
/// <param name="iSize">欲转换成的列数</param>
/// <param name="iColumnID">列ID</param>
/// <returns></returns>
private DataTable MakeData(DataTable dt, int iSize, int iColumnID)
{
int iTmp = dt.Rows.Count%iSize;
int iRow;
if (iTmp == 0)
iRow = dt.Rows.Count/iSize;
else
iRow = dt.Rows.Count/iSize + 1; DataTable newDt = new DataTable();
for (int i = 0; i < 2*iSize; i ++)
{
DataColumn dc = new DataColumn(dt.Columns[iColumnID].ColumnName+i,
dt.Columns[iColumnID].DataType);
newDt.Columns.Add(dc);
} for (int i = 0; i < iRow; i ++)
{
DataRow dr = newDt.NewRow();
for (int j = 0; j < 2*iSize; j ++)
{
if ((j/2 + i*iSize) < dt.Rows.Count)
{
if (j%2 == 0)
dr[dt.Columns[iColumnID].ColumnName + j] = dt.Rows[j/2 + i*iSize][iColumnID];
else
dr[dt.Columns[iColumnID].ColumnName + j] = dt.Rows[j/2 + i*iSize][iColumnID+1];
}
}
newDt.Rows.Add(dr);
}
return newDt;
}