现有视图格式/数据如下:
Device TypeName TypeID
A T1 1
B T1 1
C T1 1
D T2 2从中取出数据后放入DataSet中, 现要在DataGrid中显示, 每个TypeID为一行记录. 也就是表中的A B C要放在一格之中. 请问将DataSet中的数据怎样处理,才能正确显示?
Device TypeName TypeID
A T1 1
B T1 1
C T1 1
D T2 2从中取出数据后放入DataSet中, 现要在DataGrid中显示, 每个TypeID为一行记录. 也就是表中的A B C要放在一格之中. 请问将DataSet中的数据怎样处理,才能正确显示?
{
UserDB grid1=new UserDB();
DataGrid1.DataSource=grid1.ReturnDataSet("select * from xbzy order by xbmc");
DataGrid1.DataBind();
SpanGrid();
}
//实现相同数据合并行
private void SpanGrid()
{
int intSpan=0;
int nowSpan=0;
string strTemp="";
for(int i=0;i<DataGrid1.Items.Count;)
{
intSpan=1;
strTemp=DataGrid1.Items[i].Cells[1].Text.ToString();
for(int j=i+1;j<DataGrid1.Items.Count;j++)
{
if(string.Compare(strTemp,DataGrid1.Items[j].Cells[1].Text)==0)
{
intSpan++;
DataGrid1.Items[i].Cells[1].RowSpan=intSpan;
DataGrid1.Items[j].Cells[1].Visible=false;
}
else{break;}
}
nowSpan+=intSpan;
i=nowSpan-1;
}
}QQ:252887502 MSN:[email protected]
如果还不清楚可以谈谈
Device TypeName TypeID
A,B,C T1 1
D T2 2
不知道拆分DataSet或在DAO中拼接sql语句能否实现?
dt = ds.Tables["Type"];
dt.Columns.Add(dc); dtTemp = new DataTable();
dtTemp = dt.Copy();
dt.Clear();
string strTempName,strTempNo,strTempPro;
foreach(DataRow row in dtTemp.Rows)
{
strTempPro = "";
strTempName = row["Name"].ToString();
strTempNo = row["SerialNo"].ToString(); foreach(DataRow row2 in ds.Tables["VW_EquipTypeAndExtProperty"].Rows)
{
if(strTempName.Equals(row2["TypeName"].ToString()))
{
if(strTempPro.Equals(""))
{
strTempPro += row2["PropertyName"].ToString();
}
else
{
strTempPro += "," + row2["PropertyName"].ToString();
}
}
// else
// {
// break;
// }
} DataRow r=dt.NewRow();
r["Name"] = strTempName;
r["SerialNo"] = strTempNo;
r["PropertyName"] = strTempPro;
dt.Rows.Add(r);
} ds.AcceptChanges();
//************************************************************************
return this.ds;