2013-11-28 27 views
0

我知道這種類型的問題之前被問過,但沒有人得到答案...... !!如何從DataKeys中獲取GridViewRow

如何從數據鍵獲取網格視圖行。我不想遍歷整個網格視圖。 我想訪問網格視圖中的特定文本框。

例如在100行網格視圖中,我只想禁用頁面加載中的任何2個文本框。 我有網格中定義的數據鍵名稱,但如何從它獲取行? 有什麼想法?

回答

1

請嘗試以下代碼..

protected void GVSample_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    //Get data row view 
    DataRowView drview = e.Row.DataItem as DataRowView; 
    if (e.Row.RowType == DataControlRowType.DataRow) 
    {  
     //Find textbox control 
     TextBox txtname = (TextBox)e.Row.FindControl("txtName"); 
     string Name = txtname.Text; 

     if (((GridView)sender).DataKeys[e.Row.RowIndex].Value.ToString() == "Leave") 
     { 
      txtname.disable=true; 
     } 
     else 
     { 
      txtname.disable = false; 
     } 
    } 
} 
+0

我的朋友,我不知道該行的索引,我只知道這個DateKey..based我想找到的行.. !!其他明智的你的代碼是完美的,如果行已知。 – Tami

+0

你知道datakeys這意味着你想要的文本框的ID? –

+0

GridView的DataKeyNames屬性..每個GridViewRow都與這個Key綁定..清除了? – Tami