2011-08-17 129 views
0

我有一個名爲「ltlTextBox1」和「ltlTextBox2」文字控制C#轉換字符串字面控制

我願做這樣的事情

for (int i = 1; i <= 2; i++) 
{ 
    string textbox = "ltlTextBox" + i; 
    textbox.Text = "Write this"; 
} 
+3

的winform,WPF,asp.net,MVC,...?來吧,給它一個正確的標籤! – 2011-08-17 13:14:19

回答

2
TextBox textbox = this.FindControl("ltlTextBox" + i) as TextBox; 

if (textbox != null) { 
    textbox.Text = "Write this"; 
} 
+1

Woops。感謝編輯Jamiec。 – 2011-08-17 13:54:31

0

我相信這是一個LiteralControl控制在asp.net中。這很可能會提供您需要的功能。

除此之外,我認爲我們可能需要更多信息來幫助您瞭解您嘗試使用這些文字控件的方式/方式/位置。

在你的代碼的文本框(在此擴大)

LiteralControl l = this.FindControl("ltlTextBox") as LiteralControl; 
l.Text = "My Text"; 
0

爲字符串類型的變量。字符串沒有名爲Text的屬性。

將值賦給變量不會改變值的名稱。即("ltlTextBox" + 1).ToString()打印「ltlTextBox1」,而ltlTextBox1.ToString()打印System.Web.Ui.Controls.LiterlaControl或什麼類型的變量是。

你要麼需要做的:

ltlTextBox1.Text = 「寫」; ltlTextBox2.Text =「寫這個」;

var controls = new[]{ ltlTextBox1, ltlTextBox2}; 
    for(int i = 0;i<controls.Length;i++){ 
    controls[0].Text = "Write this"; 
    }