在事件中改变
private void Form1_TextChanged(object sender, EventArgs e)
{
string nnn = Form1.ActiveForm.Text.ToString();
this.Textbox.Text = nnn;
}
然后想在这个函数取得
public void Bind(string strsql)
{
string nnn = this.Textbox.Text.ToString();
}
结果在这边的时候,Textbox还是空值
private void Form1_Load(object sender, EventArgs e)
{
this.Bind(strsql);
}
怎么才能得到改变后的值呀?或者怎么改变这函数执行顺序?把changed放在lord里也不行。
private void Form1_TextChanged(object sender, EventArgs e)
{
string nnn = Form1.ActiveForm.Text.ToString();
this.Textbox.Text = nnn;
}
然后想在这个函数取得
public void Bind(string strsql)
{
string nnn = this.Textbox.Text.ToString();
}
结果在这边的时候,Textbox还是空值
private void Form1_Load(object sender, EventArgs e)
{
this.Bind(strsql);
}
怎么才能得到改变后的值呀?或者怎么改变这函数执行顺序?把changed放在lord里也不行。
{
string nnn = Form1.ActiveForm.Text.ToString();
this.Textbox.Text = nnn;
}你确定要用 Form1.ActiveForm.Text 属性吗,既然是 TextChanged 事件,取 this.Text 也可以啊
你试下不注册 TextChanged 事件,override OnTextChanged 方法,把 Form1_TextChanged 改成如下方法
protected override void OnTextChanged(EventArgs e)
{
base.OnTextChanged(e);
string nnn = this.Text.ToString();
this.Textbox.Text = nnn;
}
text还是没变。Textbox的值我是用登录窗口给它的,登陆成功后跳出的新窗口名字和Textbox.text都改变了,但是获取改变后的值一直不是我想要的值。