实际上就是根据数据库的内容做一定的修改后分页显示出来
问题:
1.象这样的情况应该使用哪种控件合适,Table行吗?
2.在显示数据的过程中如何合并单元格(合并行、列)呢?我测试了一下,合并的比较乱
3.如何分页显示呢?分页的数据写在什么控件上,lable?
请高手不吝赐教!

解决方案 »

  1.   

    非绑定的数据
    什么意思?最灵活的就用repeater了
      

  2.   

    DataGrid就有分页显示的功能,也有修改保存的功能吧
      

  3.   

    用存储过程做,实际从数据库读出的信息就一页,用两个参数InputOutput类型进行控制,包括记录总条数和页数
      

  4.   

    用datagrid
    它本身就有控制是否分页的属性
      

  5.   

    那就再说一遍
    有一个表格数据(有合并单元格、数据多需要分页显示)存储在数据库中
    在数据的显示过程中,要根据数据库中的数据具体情况,显示的数据要做相应的改动。(因为要做改动好像不能用数据绑定控件吧,自己的理解不知道对不对)另外,datagrid好像已经成为过去时了,怎么还有人提,我的vs.net2005中好像没有她
      

  6.   

    主要说说使用Table控件如何分页
      

  7.   

    不知道您说的改动是什么意思?
    datagrid在vs 2005中属不常用组件,需自己手工添加
      

  8.   

    需要合并单元格呀,绑定不容易呀
    table控件可以很容易合并单元格,但分页怎么办呀
      

  9.   

    不知道你“显示的数据要做相应的改动”是怎么个改法就算是使用邦定也可以对显示的数据做相应的改动的,如果是规律的改动直接使用Eval就可以了,如果不是规律的改动,就在GridView或dataList控件的行数据邦定事件发生时直接赋值就可以了。
      

  10.   

    同意kevin_zheng500(kevin_zheng500) 的说法,实在不明白楼主为什么一定对单元格进行合并,需要合并的,应该是里边的内容,与单元格本身无关吧,除非,你必须得表现成复杂的多栏位表格
      

  11.   

    你看看这个是不是你想要的:
    ForumColumnData forumColumnSet;
    forumColumnSet = (new xmlchina.BusinessFacade.ForumColumnSystem()).GetForumColumnListByGroup(forumGroupid,roleID);
    int forumColumnCount = forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows.Count;
    // 加入大栏目行
    TableRow tr = new TableRow();
    tr.CssClass = "fh";
    tr.Height = 25;
    TableCell tc = new TableCell();
    tc.CssClass = "fh";
    tc.Text = " " + forumGroupSet.Tables[ForumGroupData.FORUMGROUP_TABLE].Rows[0][ForumGroupData.NAME_FIELD].ToString();
    tr.Cells.Add(tc);
    Groups.Rows.Add(tr);
    if(forumColumnCount > 0)
    {
    // 重新用tr,tc
    tr = new TableRow();
    tc = new TableCell();
    // 加入小栏目行,用Table
    Table columntable = new Table();
    columntable.CellPadding = 3;
    columntable.CellSpacing = 1;
    columntable.Width = Unit.Parse("100%");
    columntable.ID = "group"+forumGroupid.ToString();
    for(int j = 0;j < forumColumnCount;j++)
    {
    TableRow htr = new TableRow();
    TableCell htc = new TableCell();
    htc.CssClass = "f";
    htc.Width = 20;
    htc.Text = "<img src=images/forum_status_new.gif>";
    htr.Cells.Add(htc);

    htc = new TableCell();
    htc.CssClass="f";
    htc.Text = "<a href=ShowForum.aspx?ForumID="+forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.PKID_FIELD].ToString() + ">";
    htc.Text += forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.NAME_FIELD].ToString();
    htc.Text += "</a>";
    htr.Cells.Add(htc); if(forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.MOSTRECENTPOSTID_FIELD].ToString()=="0")
    {
    htc = new TableCell();
    htc.CssClass = "fh4";
    htc.Width = 177;
    htc.HorizontalAlign = HorizontalAlign.Center;
    htc.Text += "-";
    htr.Cells.Add(htc);
    htc = new TableCell();
    htc.CssClass = "fh4";
    htc.Width = 66;
    htc.HorizontalAlign = HorizontalAlign.Center;
    htc.Text += "-";
    htr.Cells.Add(htc);
    htc = new TableCell();
    htc.CssClass = "fh4";
    htc.Width = 67;
    htc.HorizontalAlign = HorizontalAlign.Center;
    htc.Text += "-";
    htr.Cells.Add(htc);
    }
    else
    {
    htc = new TableCell();
    htc.Width = 177;
    htc.CssClass = "fh4";
    htc.Text = "<a href=ShowPost.aspx?ForumID=" + forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.PKID_FIELD].ToString() + "&PostID="+forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.MOSTRECENTPOSTID_FIELD].ToString() + ">";
    if(forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.MOSTRECENTPOSTTITLE_FIELD].ToString().Length>10)
    {
    htc.Text += forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.MOSTRECENTPOSTTITLE_FIELD].ToString().Substring(0,10) + "..." + "</a>";
    }
    else
    {
    htc.Text += forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.MOSTRECENTPOSTTITLE_FIELD].ToString() + "</a>";
    }
    //htc.Text += forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.MOSTRECENTPOSTTITLE_FIELD].ToString() + "</a>";
    htc.Text += "<BR>";
    htc.Text += forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.MOSTRECENTPOSTDATE_FIELD].ToString();
    htc.Text += "</a>";
    htr.Cells.Add(htc);
    htc = new TableCell();
    htc.CssClass = "fh4";
    htc.Text = forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.TOTALTOPICS_FIELD].ToString();
    htc.Width = 66;
    htc.HorizontalAlign = HorizontalAlign.Center;
    htr.Cells.Add(htc);
    htc = new TableCell();
    htc.CssClass = "fh4";
    htc.Text = forumColumnSet.Tables[ForumColumnData.FORUMCOLUMN_TABLE].Rows[j][ForumColumnData.TOTALPOSTS_FIELD].ToString();
    htc.Width = 67;
    htc.HorizontalAlign = HorizontalAlign.Center;
    htr.Cells.Add(htc);
    }
    columntable.Rows.Add(htr);
    }
    // 把小栏目列表加人到Table
    tc.Controls.Add(columntable);
    tr.Cells.Add(tc);
    Groups.Rows.Add(tr);
    }这样用的前提是必须在页面上声明一个服务器端table,如
    <asp:Table id="Groups" runat="server" CssClass="tableBorder" CellPadding="0" CellSpacing="0"
    Width="100%"></asp:Table>
    然后在后台代码中为其生成row和cell
      

  12.   

    to renzhm(戴尔飞)
    分页不想带参数,就象别的带分页功能的控件一样
      

  13.   

    我使用的是分页控件,免费的AspNetPager,非常方便,无论使用Table还是GridView显示数据我都使用它,不过你必须能够提供每页的数据集,如://pager.PageSize:每页行数,pager.CurrentPageIndex:当前页,pager:是分页控件名字
    DataSet data = new DataSet();
    data = (new ArticleSystem()).GetArticleList(channelid, ISCHECKED, pager.PageSize, pager.CurrentPageIndex, false);pager.CurrentPageIndex可以通过pager的change事件获得-----------------------------------------------------
    你下载一个看看,如果没有找到,留下Email,我发给你