【发布时间】:2015-10-21 06:05:45
【问题描述】:
我正在向一个类发送一个变量,而在程序调试时,当我发送变量时,如果我要查看类,变量中有值,但是当我需要使用它时,我要为空,这就是我正在做的事情:
Clase1 objclase = new Clase1();
private void b_Aceptar_Click(object sender, EventArgs e)
{
//cbnombre is the name of a combobox
objclase.retornaNombre(cb_nombre.SelectedItem.ToString());
//MessageBox.Show(cb_nombre.SelectedItem.ToString());
}
课程有:
public class Clase1
{
public string _nombre;
public string nombre
{
get { return _nombre; }
set { _nombre = value; }
}
public void retornaNombre(string nom)
{
_nombre = nom;
}
}
这是我的问题:
public void button1_Click(object sender, EventArgs e)
{
frm_IngresarNombre ventana = new frm_IngresarNombre();
ventana.ShowDialog();
MessageBox.Show(objclase.nombre);
}
在这个消息框我得到空... 希望你能帮助我。
【问题讨论】:
-
您没有设置属性并访问它,这就是为什么会出错。
-
参见this meta post 非英文代码。
-
这个问题主要是:1.) 是 objcase 与其他函数中的相同。 2.) be_aceptar 方法在 button1_click 之前运行吗?如果两者都是真的,那么它很奇怪,但我猜两者之一是假的
-
在寻求调试帮助时请提供MCVE。
-
最简单的解释是,你会得到
的字符串默认值。在访问它之前,您是否为 nombre 分配了任何东西?如果您可以直接访问它,为什么还要构建一个方法来将某些东西分配给 nombre?
标签: c# visual-studio-2012