2

2つのグリッドビューに共通のrowdataboundメソッドがあります。このメソッドのタスクの一部は、グリッドビューの最後の列に値を割り当てることです。

グリッドビューは同じですが、値は2つのグリッドビューとは異なります。したがって、最初のグリッドビューまたは他のグリッドビューにvaulesを割り当てているかどうかを確認する必要があります。

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        //Here i need to check which gridview (Gridview1 or Gridview2)
        if (e.Row.RowType == DataControlRowType.DataRow)
        {

            {
                int CellValue = Convert.ToInt32(e.Row.Cells[0].Text);

                if (CellValue == 1)
                    e.Row.Cells[7].Text = "" + patchWeekTwo[0] + "t";
                else if (CellValue == 2)
                    e.Row.Cells[7].Text = "" + patchWeekTwo[1] + "t";
                else if (CellValue == 3)
                    e.Row.Cells[7].Text = "" + patchWeekTwo[2] + "t";
                else if (CellValue == 4)
                    e.Row.Cells[7].Text = "" + patchWeekTwo[3] + "t";
                else
                    e.Row.Cells[7].Text = "" + patchWeekTwo[4] + "t";
            }
        }
     }
4

2 に答える 2

3

かどうかsenderを確認できます:GridView1GridView2

if( sender == GridView1 ){}
else{}

これGridView1は、ページの上部で宣言されている場合にのみ機能し、その子の1つでは機能しないことに注意してくださいNamingContainers。次に、IDを確認できます。

var grid = (GridView)sender;
if( grid.Id == "GridView1" ){}
else{}
于 2012-09-02T19:46:45.793 に答える
2

私はこれがそれをするべきだと思います

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
     GridView gv = (GridView)sender;
     if(gv.ID == "gv1")
        //do this
     else
        //do that
}
于 2012-09-02T19:54:10.850 に答える