2013-03-06 1 views
0

GridView가 있고 GridView 밖에있는 DropDownList로 첫 번째 열 (teachername)을 바인딩하고 싶습니다. 어떻게 작동시킬 수 있습니까? 당신이 어떤 혼란을 느낀다면 주저하지 말고GridView의 열을 DropDownList에 바인딩하는 방법?

this.GridView1.Rows[i].Cells[0].Value = teachername;를 사용하여

protected void Button2_Click(object sender, EventArgs e) 
{ 
    string q = "select * from teacher where teachername='" + drpteachername.SelectedItem.ToString() + "' and ('2013-03-01' between date and todate) and '2013-03-31' between date and todate"; 
    dt = dbo.Getdt(q); 
    GridView1.DataSource = dt; 
    GridView1.DataBind(); 
    string teachername=drpteachername.SelectedItem.ToString(); 


    for (int i = 0; i < dt.Rows.Count ;i++) 
    { 
     Label lblteachername = (Label)GridView1.Rows[i].Cells[0].FindControl("lblgridteachername"); 

        this.GridView1.Rows[i].Cells[0].Value = teachername; 
    } 


} 
+0

어떤 문제가 있습니까? –

+0

@huMptyduMpty 버튼을 클릭해도 아무런 변화가 없습니다. 위의 코드는 결과 나 오류를주지 않습니다. – Arbaaz

+0

오류가 발생했습니다 { "색인이 범위를 벗어났습니다. 음수가 아니어야하고 모음 크기보다 작아야합니다. \ r \ n 매개 변수 이름 : 색인"} – Arbaaz

답변

0

봅니다 씁니다.

이 문은 for 루프에 포함되어야합니다.

+0

system.web.ui.webcontrols.tablecell ' 'value'에 대한 정의가 포함되어 있습니다. – Arbaaz

+0

잘 처리되고 있습니다. 어떤 버전의 .NET을 사용하고 있습니까? –

+0

.NET Framework 4.0을 사용하고 있습니다. 내 코드를 편집했는데 제대로하고 있는지 확인합니다. – Arbaaz

0

프리 렌더 이벤트에서 가져올 수 있습니다.

protected void GridView1_PreRender(object sender, EventArgs e) 
    { 
     Label lblteachername = (Label)GridView1.Rows[i].FindControl("lblgridteachername"); 
     lblteachername.Text = teachername; 
    } 
관련 문제