【发布时间】:2011-03-05 00:05:40
【问题描述】:
将值传入和传出第二种形式时的奇怪行为。
ParameterForm pf = new ParameterForm(testString);
作品
ParameterForm pf = new ParameterForm();
pf.testString="test";
没有(testString 定义为公共字符串)
也许我错过了什么?无论如何,我想让第二个变体正常工作,就目前而言 - 它返回空对象引用错误。
感谢您的帮助。
在这里发布更多代码:
打电话
Button ParametersButton = new Button();
ParametersButton.Click += delegate
{
ParameterForm pf = new ParameterForm(doc.GetElementById(ParametersButton.Tag.ToString()));
pf.ShowDialog(this);
pf.test = "test";
pf.Submit += new ParameterForm.ParameterSubmitResult(pf_Submit);
};
定义和使用
public partial class ParameterForm : Form
{
public string test;
public XmlElement node;
public delegate void ParameterSubmitResult(object sender, XmlElement e);
public event ParameterSubmitResult Submit;
public void SubmitButton_Click(object sender, EventArgs e)
{
Submit(this,this.node);
Debug.WriteLine(test);
}
}
结果: 提交 - 空对象引用 测试 - 空对象引用
【问题讨论】:
-
我可以看看你使用的构造函数吗?
-
它是怎么不工作的,你什么时候得到空对象引用错误?