2012-02-19 58 views
0

可能重複:
C# Get control by nameC#字符串轉換成文本框的名字

我一直在四處尋找這個答案了一會兒,想知道是否有人會幫助我,請。

我想將字符串類型轉換爲文本框類型,所以說下面。

String text = "textBox" + number; 

TextBox tb = text; 

我想這樣做,所以我收到號碼,然後我知道哪個文本框寫入。

任何幫助將不勝感激! :)

回答

3

那麼,你可以使用反射來獲得變量,但我認爲你真正想要的只是找到實際的控制。

使用FindControl方法來獲得實際的文本框的引用:

TextBox tb = FindControl("textBox" + number.ToString()) as TextBox; 
+0

我得到了HTML控件的錯誤。它成功運行與asp.net控件。 – Sagar 2014-07-11 16:09:50

+0

@Viktor:一個HTML標籤需要'runat =「server」'作爲服務器控件,否則它只會被當作文本在服務器端。 – Guffa 2014-07-13 11:46:55

0

你有一個文本框的數組? 是Windows窗體/網絡?

基本上你可以找到通過容器的控件集合並找到帶有ID的元素。

請注意,我的答案是相當廣泛,並不準確的所有情況下。如果你會提供更多的細節,我會進一步幫助你。

3
String text = "textBox" + number; 
TextBox tv = (TextBox)FindControl(text); 
+0

我剛纔一直在尋找找你如何使用「的FindControl」你能解釋它,因爲我從來沒有和我遇到過找不到一個好例子?感謝您的幫助! – James 2012-02-19 21:22:25