2014-07-10 3 views
0

GridView에는 헤더 행이 있습니다. 하위 헤더가 있습니다. 이 후 다른 데이터를 표시 할 행을 추가했으며이 행은 Header 유형이 아닙니다. 이 행은 Empty 유형입니다. 비어있는 것으로 정의되었지만 DataBinding 수준에서 일부 데이터를 표시해야합니다 (RowDataBinding이 아님).GridView에서 추가 행을 참조하는 방법은 무엇입니까?

데이터 행이 아닌이 세 번째 행을 어떻게 참조 할 수 있습니까?

의사 생각 :

  1. GridView.Controls의 컨트롤을 호출? 다음에 g.row.cells의 GridView에

    GridViewRow vr = GridView2.Controls[0].Controls[2].FindControl("Header2GridRow") as GridViewRow; 
    
          if (vr.RowType == DataControlRowType.EmptyDataRow) 
    
  2. 의 foreach EmptyDataType 행 참조 [I] ...?

+0

행을 RowTemplate으로 설정 했습니까? 그리드의 레이아웃을 공유하십시오. – Bayeni

답변

0

질문을 삭제하는 것이 좋지 않을 것 같습니다. 그래서 나에게 맞는 대답을 쓰도록하겠습니다. 논리적으로/MSDN 현명한 것 같습니다.

EmptyDataRowType으로 GridViewRow를 삽입하지만 궁극적으로 DataRowType이됩니다. 또한 GridView 컨트롤의 기존 컨트롤의 인덱스를 참조하는 방법을 변경해야했습니다.

 GridViewRow vr = GridView2.Controls[0].Controls[2] as GridViewRow; 

     if (vr.RowType == DataControlRowType.DataRow) 
     for(int i=0; i<=dtable.Columns.count;i++) 
     { 
      vr.Row[i].Text = dtableRow[i].ToString(); 
     } 
관련 문제