【发布时间】:2014-11-06 12:20:17
【问题描述】:
我有一个简单的按钮单击方法,它将文本框的文本设置为可修改的 textFromTB。
private void Button1_Click(object sender, EventArgs e)
{
string textFromTB = TextBox1.Text;
}
如果我运行一次,没关系,它将 TextBox1 的文本设置为 textFromTB。但是,如果我第二次运行该方法,它会抛出 NullReferenceExepction。这是为什么呢?
我试图像那样初始化文本框
private void Button1_Click(object sender, EventArgs e)
{
TextBox TextBox1 = new TextBox();
string textFromTB = TextBox1.Text; // that line returns null
}
但这会将TextBox1.Text 设置为null 或空字符串。我怎样才能更改它可以多次工作而无异常的代码?
提前致谢!
【问题讨论】:
-
试试这个:
TextBox1.Text="Some Text"; textFromTB=TextBox1.Text -
不,它仍然会抛出错误,因为该行:
TextBox TextBox1 = new TextBox();以某种方式重置了 textbox1 并且它的文本变为空。然后最后 textFromTB 始终为空。 -
为TextBox1设置
ID,TextBox1.ID="txt1"; TextBox1.Text="Some Text"; String textFromTB="TextBox1.Text"; -
我是否必须导入某些内容,因为 .ID 不起作用?
-
它给了我这个错误:`错误 7 'System.Windows.Forms.TextBox' 不包含'ID'的定义,并且没有扩展方法'ID'接受'System'类型的第一个参数.Windows.Forms.TextBox' 可以找到(您是否缺少 using 指令或程序集引用?)
标签: c# visual-studio visual-studio-2012 nullreferenceexception