困惑DataGridView单元格合并!
本帖最后由 zl194 于 2010-06-09 13:27:29 编辑
客户想要这样的一个表格效果。
可能效果不太明显,就是要分产品的显示明显记录和汇总情况,其中涉及到单元的合并,并且是分产品的单元合并(如其中哦你4x虽然是相同的值,但是并不进行合并,英文产品不同。)
请高手帮我看看用DataGridView能做吗,如果不能用什么做,最好能给我个例子程序,我用的是VS2005项目是在WinForm下的。哪位好心发到我邮箱:zl194@126.com谢谢大家。发邮件时给个您的ID,我会来给分结贴的。
万分感谢!!!!!!!!!!
------解决方案--------------------datagridview
http://www.codeproject.com/info/search.aspx?artkw=datagridview&sbo=kw
------解决方案--------------------不知道 LZ 用没用过 FARPOINT 控件,使用起来很方便!只要是EXCEL能做出来的表格,他全都能够将数据绑定到控件上
------解决方案--------------------直接做到excel里比较简单。还有一个用报表的方式显示。
------解决方案--------------------如果用第三方控件还是比较容易实现的。
------解决方案--------------------DataGridView合并单元格
------解决方案-------------------- 学习...
------解决方案--------------------用第三放控件吧!~
这样方便!不过我用过,都是老师给的
我也不会!~
------解决方案--------------------这个中文的呀!!
http://www.cnblogs.com/peterzb/archive/2009/05/29/1491891.html
------解决方案--------------------第三方控件。。。
------解决方案--------------------困惑。。。6楼的头像让我很困惑
------解决方案--------------------public static void MRows(GridView GridView1, int cellNum)
{
int i = 0, rowSpanNum = 1;
while (i < GridView1.Rows.Count - 1)
{
GridViewRow gvr = GridView1.Rows[i];
for (++i; i < GridView1.Rows.Count; i++)
{
GridViewRow gvrNext = GridView1.Rows[i];
if (gvr.Cells[cellNum].Text == gvrNext.Cells[cellNum].Text)
{
gvrNext.Cells[cellNum].Visible = false;
rowSpanNum++;
}
else
{
gvr.Cells[cellNum].RowSpan = rowSpanNum;
rowSpanNum = 1;
break;
}
if (i == GridView1.Rows.Count - 1)
{
gvr.Cells[cellNum].RowSpan = rowSpanNum;
}
}
}
}
/// 根据条件列合并GridView列中相同的行
public static void MRows(GridView GridView1, int cellNum, int cellNum2)
{
int i = 0, rowSpanNum = 1;
while (i < GridView1.Rows.Count - 1)
{
GridViewRow gvr = GridView1.Rows[i];
for (++i; i < GridView1.Rows.Count; i++)
{
GridViewRow gvrNext = GridView1.Rows[i];
if (gvr.Cells[cellNum].Text + gvr.Cells[cellNum2].Text == gvrNext.Cells[cellNum].Text + gvrNext.Cells[cellNum2].Text)