2013-01-14 2 views
0

열을 자동으로 생성하는 gridview (List<> DataSource)가 있는데, 이제는 해당 열에 HeaderText을 지정하면됩니다. 내가 많이 봤 거든 몇 가지 이전 질문에만 체크했다. 자동 생성 된 그리드에는 열 컬렉션이 없다., 마침내이 기사 다음에 나만의 맞춤 표를 만들었습니다. http://damieng.com/blog/2006/09/25/extending-gridview-to-access-generated-columns 이제 열 컬렉션을 눈에 보이는 속성 페이지에서 작업 : 부동산 BoundColumns, 내가 PageLoad에 HeaderText에 속성을 설정 RowDataBound 이벤트하지만 헛된에있는 모든 시도했다, 나는 그것이AutoGenerateColumn GridView에 대한 HeaderText 지정

  gridUsers.BoundColumns[0].Visible = false; 
      gridUsers.BoundColumns[1].HeaderText = "Login ID"; 
      gridUsers.BoundColumns[2].HeaderText = "User Name"; 
      gridUsers.BoundColumns[3].Visible = false; 
      gridUsers.BoundColumns[4].HeaderText = "User Email"; 
      gridUsers.BoundColumns[5].HeaderText = "User Status"; 
      gridUsers.BoundColumns[6].HeaderText = "User Role"; 

PS 일을 내가 할이 코드를 넣을 수있는 이벤트에 대해 알 필요가 하중. 어떤 도움을 주셔서 감사합니다.

protected void GridView1_RowDataBound(object sender, System.Web.UI.WebControls.GridViewRowEventArgs e) 
{ 

    if (e.Row.RowType == DataControlRowType.Header) 
    { 
     GridView1.Columns[0].HeaderText = "your header text name"; 
    } 
} 

답변

1

을 따를

+0

네, BoundField가 이것을 달성하는 표준 방법이라고 생각합니다. 조언을 주셔서 감사합니다. –

0

예 당신이 할 수있는 수동으로 헤더를 설정하려면, 특히 당신이 자동 생성 된 열을 할 필요가 없습니다. 올바른 열 머리글을 사용하여 데이터 소스를 반환으로 변경하거나 <columns><asp:boundfield HeaderText="" >...을 사용하고 열을 수동으로 지정하고 AutoGenerateColumns=false을 설정하십시오.

대부분의 경우 RowDataBound 이벤트 중에 헤더와 열을 변경하지만 선언적 구문을 사용하는 경우 또는 특수한 렌더링 요구 사항이없는 경우에는 필요하지 않습니다.

+0

시도한 사람! –

관련 문제