在一个网页上我有上下两个DataGrid,
主表显示所有用户,
主表上有一列模板列按钮, 点一下,从表显示该用户明细
我在从表的表足 合并了所有列,显示总计行.但是当我再点一个按钮(我还没对该按钮写代码)(造成页面刷新后) 从表的格式就乱了
比如,原来是 上部是10列,表尾(也就是总计行)是1列和上部10列对齐,
 现在上部变成了11列,表尾总计行仍然占了10列,但后面多出了9列并和上部新多出的一列对齐.
请问高手,有没有碰到过这个问题? 这是什么问题造成的?多谢!

解决方案 »

  1.   

    感覺你從表new了一個新的哦.看看你的邏輯.
      

  2.   

    dgApplyHis 主表
    dgBalanceCDR  从表下面是所有有关从表的代码:
    protected float fTotalPoint;private void dgApplyHis_ItemCommand(object source,       
                           System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
    if ( e.Item.ItemIndex != -1)
    {
    if ( e.CommandName.ToString() == "cnViewCDR" )
    {
    string strBalanceCDRSelCmd =  "从表选择语句";          SqlSrv2DataGrid(strSqlConn, strBalanceCDRSelCmd, dgBalanceCDR); }
    }
    }protected int SqlSrv2DataGrid(string strSqlConn, string strSqlCmd, DataGrid dgDes)
    {
    SqlDataAdapter sdaSrc = new SqlDataAdapter(strSqlCmd, strSqlConn);
    DataTable dtDes = new DataTable();
    sdaSrc.Fill(dtDes);
    DataView dvDes = new DataView(dtDes);
    dgDes.DataSource = dvDes;
    dgDes.DataBind();
    return 0;
    }private void dgBalanceCDR_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    ListItemType itemType = e.Item.ItemType;
    if ( itemType == ListItemType.Item || itemType ==  
                                            ListItemType.AlternatingItem ) 
    {
    fTotalPoint = fTotalPoint + Convert.ToSingle(e.Item.Cells[8].Text); }
    if ( itemType == ListItemType.Footer )
    {
    int nCellsCount = e.Item.Cells.Count;
    for (int i=nCellsCount-1; i>0; i--)
    {
    e.Item.Cells.RemoveAt(i);
    }
    e.Item.Cells[0].ColumnSpan = nCellsCount;
    e.Item.Cells[0].HorizontalAlign = HorizontalAlign.Right;
    e.Item.Cells[0].Text = "总计: ¥" + fTotalPoint.ToString();
    }
    }private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面
    strSqlConn = "主表及从表的连接字符串"
    strApplyHisSelCmd = "主表选择语句"
             if (!IsPostBack)
    {
    SqlSrv2DataGrid(strSqlConn, strApplyHisSelCmd, dgApplyHis);

    }
    }
      

  3.   

    页面的Page_Load事件里中入 if(!Page.IsPostBack)
      

  4.   

    我的Page_Load里
    {
    ...
    if (!Page.IsPostBack)
    {
       有主表刷新语句
    }}但是没有子表刷新语句啊?有没有用过总计行的碰到过这个怪问题的啊?