0

2つのグリッドビューgridview1gridview2asp.netページ内があります。データをにバインドするにgridview2は、gridview1に依存するため、最初にバインドする必要がありvaluesます。

バインドが完了gridview2したら、新しい行を追加し、最後の行の中にgridview1全体を追加します。gridview2したがって、のそれを行うことはできませonRowDataBoundgridview1

それを行う方法はありますか?

次のことを試しましたが、機能しません

 grdQuestions.DataSource = LoadQuestions();
        grdQuestions.DataBind();

   grdAnswers.DataSource = LoadAnswer(Convert.ToInt32(grdQuestions.Rows[0].Cells[0].Text));
   //GridView2.DataSource = LoadAnswer(2);
   grdQuestions.Rows[0].Cells[0].Controls.Add(grdAnswers);
   grdAnswers.DataBind();
   grdQuestions.DataBind();
4

1 に答える 1

4

以下のようにできます:

まず、親グリッドをバインドする関数を作成します。

 private void BindParentGrid()
 {
    //Get data from database in dataset.
      ParentGrid.DataSource = dataset;
      ParentGrid.DataBind();

 }

次に、子グリッドをバインドする関数を作成します。

private void BindChildGrid()
{                       
      //get data from database in dataset2.
       ((GridView)ParentGrid.Rows[i].Cells[1].Controls[1]).DataSource = dataset2;
       ((GridView)ParentGrid.Rows[i].Cells[1].Controls[1]).DataBind();
}

次に、最初に電話BindParentGrid()してから電話しますBindChildGrid().

このリンクも役立ちます: http://www.codeproject.com/Articles/22928/GridView-within-GridView

于 2012-10-19T07:42:29.507 に答える