你这样是肯定没有的,因为click事件点击后立即执行完了,根本不能等待你输入的结果的。
理应的形式是:点击后出现textbox然后对话框弹出空。你的输入是没法赋值的。
如果要显示,将 String S;
TextBox txt = new TextBox();
txt.SetBounds(250, 0, 200, 400);
this.Controls.Add(txt);
txt.Enabled = true;
放在构造函数或者form_load事件中。
这样写:
TextBox txt = new TextBox();
String S;
private void button1_Click(object sender, EventArgs e)
{
S = txt.Text;
MessageBox.Show(S);
}
private void Form1_Load(object sender, EventArgs e)
{
txt.SetBounds(250, 0, 200, 400);
this.Controls.Add(txt);
txt.Enabled = true;
}
你的代码是不会显示任何数据的,以这种形式来看,你是按了按钮之后才显示文本框的吧,而且,每次在你点击按钮之后,都会重新初始化一个新的textbox,所以,你每次调用代码,textbox的text属性值一直是处于没有赋值的状态,不会显示数据的
TextBox txt = new TextBox();
String S;
private void button1_Click(object sender, EventArgs e)
{
S = txt.Text;
MessageBox.Show(S);
}
private void Form1_Load(object sender, EventArgs e)
{
txt.SetBounds(250, 0, 200, 400);
this.Controls.Add(txt);
txt.Enabled = true;
}
你动态添加的textbox的Text属性没有赋值,S的内容自然没有了
你也没设置txt的Text属性,让他显示什么啊? 你写了这么多代码,最终效果就是在界面上显示文本框,然后把s用messagebox弹出一下。什么东西都没有!