2013-08-04 41 views
1

我認爲簡單的問題。我有一個gridviewrow,我希望能夠將文本從單元格放到我的頁面上的文本框中。該行來自列名爲「標題」並且類型爲nvarchar(100)的表。我嘗試過這樣的東西,但它給了我一個空字符串;ASP.NET使用findControl從GridViewrow單元格中獲取文本

 tBox.Text = ((TextBox)selectedRow.FindControl("Title")).ToString(); 

我知道我可以使用單元格值,但我認爲這將有助於知道。 有什麼建議嗎?

感謝

回答

0

這是正確的想法,只是一點點關閉:

row.FindControl("columnName")

給你一個實際的對象。它返回的內容取決於ASP部分中指定的內容。可能是一個標籤,可能是一個文本框,複選框...

有了對象之後,您可以像平常一樣訪問屬性。在這種情況下,您可能需要Text屬性。

row.FindControl("...").Text

如果你想用位置索引,這樣的事情也可以工作:

row.Cells[i].Controls[1]

哪裏i是0基於指標的項目,從左邊開始。

0

我不明白你UR選用指標的方式,但在任何情況下,你首先要得到這個文本到文本框,然後變量裏面的文字傳遞給烏爾頁面像這樣的文本框:

TextBox tb = (TextBox)selectedRow.FindControl("Title"); 
if(tb != null){ 
    tBox.Text = tb.Text; 
} 

also selectedRow可以從gridview的行上的for循環獲得,或者你可以通過e.RowIndex

從編輯行或更新行或行數據綁定
相關問題