Text in ASP.NET Textbox

21/04/2008 - 09:12 von Matthias Pieroth | Report spam
Hallo NG,

ich erzeuge serverseitig eine TextBox und einen Button. Beide stecke ich per
Code in ein Panel:

TextBox txtQuNew = new TextBox();
txtQuNew.Width = 400;
txtQuNew.CssClass = "questedit_text";

Button btn_Add = new Button();
btn_Add.ID = "Add_" + dept.GIdDept;
btn_Add.CommandArgument = dept.GIdDept.ToString();
btn_Add.Text = "Add";
btn_Add.Width = 80;
btn_Add.CssClass = "questedit_button";
btn_Add.Click += new EventHandler(btn_Add_Click);

pan_Quest.Controls.Add(txtQuNew);
pan_Quest.Controls.Add(btn_Add);

Im EventHandler (Click) des Buttons hole ich mir die TextBox aus dem Panel
wieder und somit den Text:

void btn_Add_Click(object sender, EventArgs e)
{
// Id of the department to add a question for
Button c = sender as Button;
Guid gidDept = new Guid(c.CommandArgument);

// Text of the question to add
Panel panel = c.Parent as Panel;
TextBox txtBox = panel.Controls[1] as TextBox;
string text2Add = txtBox.Text;

//--

}

Mein Problem ist nun, dass der Text nur dann gesetzt ist, wenn ich vorher
z.B. mit Tab die TextBox verlassen habe. Wenn ich direkt den BUtton drücke,
ist der Text leer. Was kann ich da tun? Muss ich javascript einsetzen um den
focs zu àndern, oder geht es einfacher?

Danke und Gruß,

Matthias
www.codegod.de
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
21/04/2008 - 09:25 | Warnen spam
Hallo Matthias,

"Matthias Pieroth" schrieb:

TextBox txtQuNew = new TextBox();
txtQuNew.Width = 400;
txtQuNew.CssClass = "questedit_text";



die Textbox sollte eine ID haben. Evtl. hat sich das Problem dann schon
erledigt.

// Text of the question to add
Panel panel = c.Parent as Panel;
TextBox txtBox = panel.Controls[1] as TextBox;
string text2Add = txtBox.Text;



Warum so umstàndlich? Was machst Du, wenn das zweite Control
im Panel keine Textbox, bzw. nicht die von Dir erwartete
Textbox ist?

Mein Problem ist nun, dass der Text nur dann gesetzt ist, wenn ich vorher z.B. mit Tab die TextBox verlassen habe.



Das wàre mir neu, dass man eine Textbox erst mit Tab verlassen muss.
Kannst Du mal ein Beispiel online zur Verfügung stellen? Alternativ
kannst Du auch ein reduziertes Beispiel posten, welches nur den
relevanten Code beinhaltet.

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen